zoukankan      html  css  js  c++  java
  • Node 编程规范

    空格,

    2个, 因为有多层函数嵌套

    行宽,

    80个字符

    语句分隔,

    一律用; 并且占一行

    变量定义,

    每一个都要用 var, 并且不要定义全局变量

    变量名和属性名,

    小驼峰, yourName

    函数,

    小驼峰, 类 大驼峰 YourClass

    引号,

    一律用 '' 单引号

    关联数组初始化:

    将 var = { 放在一行,下面每行一对键值,保持两空格的缩进,以分号结尾,}; 最后单独另起一行.
    对于每对键值,除非键名之中有空格或者有非法字符,否则一律不用引号.
    例如
    var anArray = {
    name: 'asdf',
    'is good': true,
    }

    等号:

    尽量使用 === 而不是 == 来判断相等

    命名函数,

    尽量给构造函数和回调函数命名

    对象定义

    尽量将所有的成员函数通过原型定义,将属性在构造函数内定义, 然后对构造函数使用new 关键字创建对象
    绝对不要把属性作为原型定义, 因为当要定义的属性是一个对象的时候,不同实例中的属性会指向同一地址.
    除非必须,避免把成员函数定义在构造函数内部, 否则会有运行时的闭包开销。
    function FooObj(bar) {
    //在构造函数中初始化属性
    this.bar = bar;
    this.arr = [1, 2, 3];
    }
    FooObj.prototype.func = function() {
    console.log(this.arr);
    };

    继承

    首先,避免使用复杂的继承,如多重继承或深层次的继承树, 如果的确需要继承,那么尽量使用Node.js的util模块中提供的inherits函数.
    例如我们要让Foo继承EventEmitter最好使用以下方式:
    var util = require('util');
    var events = require('events');
    function Foo() {
    }
    util.inherits(Foo, events.EventEmitter);

  • 相关阅读:
    使用Azure CLI实现自动关闭Azure虚拟机的脚本
    Azure自动化部署服务 (1)
    证书相关知识
    Azure上七层负载均衡APP Gateway
    简谈 Java 中的泛型通配符
    表单提交后为什么要重定向?
    eclipse 误删文件的恢复,代码的恢复
    书籍列表
    Mybatis Generator最完整配置详解
    学习spring mvc
  • 原文地址:https://www.cnblogs.com/moveofgod/p/5387720.html
Copyright © 2011-2022 走看看