美文网首页
JavaScript基本编码规范

JavaScript基本编码规范

作者: 暗夜的怒吼 | 来源:发表于2015-03-16 09:12 被阅读1007次

    ## 缩进 ##

    建议使用**四个空格**缩进,这也是JSLint中默认的缩进。

    什么应该缩进呢?规则很简单——花括号里面的东西。这就意味着函数体,循环 (do, while, for, for-in),if,switch,以及对象字面量中的对象属性。下面的代码就是使用缩进的示例:

    ```javascript

    function outer(a, b) {

    var c = 1,

    d = 2,

    inner;

    if (a > b) {

    inner = function () {

    return {

    r: c - d

    };

    };

    } else {

    inner = function () {

    return {

    r: c + d

    };

    };

    }

    return inner;

    }

    ```

    ## 花括号{} ##

    即使在不必使用花括号的时候,也应该使用花括号。

    // 糟糕的实例

    ```javascript

    for (var i = 0; i < 10; i += 1)

    alert(i);

    ```

    // 会让人误解的写法

    ```javascript

    for (var i = 0; i < 10; i += 1)

    alert(i);

    alert(“a”);

    ```

    // 好的实例

    ```javascript

    for (var i = 0; i < 10; i += 1) {

    alert(i);

    }

    ```

    if条件类似:

    // 坏

    ```javascript

    if (true)

    alert(1);

    else

    alert(2);

    ```

    // 好

    ```javascript

    if (true) {

    alert(1);

    } else {

    alert(2);

    }

    ```

    ### 左花括号的位置 ###

    开发人员对于左大括号的位置有着不同的偏好:在同一行或是下一行。

    ```javascript

    if (true) {

    alert("It's TRUE!");

    }

    ```

    //或

    ```javascript

    if (true)

    {

    alert("It's TRUE!");

    }

    ```

    **建议:总是使用花括号,并始终把在与之前的语句放在同一行:**

    ```javascript

    function func() {

    return {

    name : "Batman"

    };

    }

    ```

    ## 分号 ##

    就像使用花括号,你应该总是使用分号,即使他们可由JavaScript解析器隐式创建。

    ## 空格 ##

    空格的使用同样有助于改善代码的可读性和一致性。

    适合使用空格的地方包括:

    for循环分号分开后的的部分:如`for (var i = 0; i < 10; i += 1) {...}`

    for循环中初始化的多变量(i和max):`for (var i = 0, max = 10; i < max; i += 1) {...}`

    分隔数组项的逗号的后面:`var a = [1, 2, 3];`

    对象属性逗号的后面以及分隔属性名和属性值的冒号的后面:`var o = {a: 1, b: 2};`

    限定函数参数:`myFunc(a, b, c)`

    函数声明的花括号的前面:`function myFunc() {}`

    匿名函数表达式function的后面:`var myFunc = function () {};`

    **使用空格分开所有的操作符和操作对象**,这意味着在+, -, *, =, <, >, <=, >=, ===, !==, &&, ||, +=等前后都需要空格。

    // 宽松一致的间距,使代码更易读。好的实例:

    ```javascript

    var d = 0,

    a = b + 1;

    if (a && b && c) {

    d = a % c;

    a += d;

    }

    ```

    // 不好的实例

    ```javascript

    var d = 0,

    a = b + 1;

    if (a&&b&&c) {

    d=a % c;

    a+= d;

    }

    ```

    最后需要注意的一个空格:左花括号前最好使用空格!

    ## 变量声明 ##

    所有的变量必须在使用前进行声明。

    将var语句放在函数的首部。

    最好把每个变量的声明语句单独放到一行,并加上注释说明。

    ```javascript

    var currentEntry; // 当前选择项

    var level;        // 缩进程度

    var size;         // 表格大小

    ```

    尽量减少全局变量的使用。**不要让局部变量覆盖全局变量。**

    ## 函数声明 ##

    所有的函数在使用前进行声明。

    函数名与`(`之间**不应该**有空格。构造函数的`)`与`{`之间应插入一个空格。函数程序体应缩进四个空格。

    ```javascript

    function outer(c, d) {

    var e = c * d;

    function inner(a, b) {

    return (e * a) + b;

    }

    return inner(0, 1);

    }

    ```

    ## 命名 ##

    变量名由26个大小写字母,10个数字,和_组成,并且只能用字母开头。不能使用中文或者$(美元符号)或者(反斜杠)。

    大多数的变量名和方法命应以小写字母开头。

    必须与new共同使用的构造函数名应以大写字母开头。

    全局变量应该全部大写。

    ### 语句 ###

    **简单语句**

    每一行最多只包含一条语句。把;(分号)放到每条简单语句的结尾处。

    **复合语句**

    复合语句是被包含在{ }(大括号)的语句序列。

    ## 格式样例: ##

    ### if 语句 ###

    ```javascript

    if (condition){

    statements;

    }

    if (condition) {

    statements;

    } else {

    statements;

    }

    if (condition) {

    statements;

    } else if (condition) {

    statements;

    } else {

    statements;

    }

    ```

    ### for 语句 ###

    ```javascript

    for (initialization;condition; update) {

    statements;

    }

    ```

    ```javascript

    for (variable in object) if (filter) {

    statements;

    }

    ```

    第一种形式的循环用于已经知道相关参数的数组循环。

    第二种形式应用于对象中。object原型中的成员将会被包含在迭代器中。

    ### while 语句 ###

    ```javascript

    while (condition){

    statements;

    }

    ```

    ### do 语句 ###

    ```javascript

    do {

    statements;

    } while (condition);

    ```

    不像别的复合语句,do语句总是以`;`结尾。

    ### switch 语句 ###

    ```javascript

    switch (expression){

    case expression:

    statements;

    default:

    statements;

    }

    ```

    每个 case与switch对齐。

    ### try 语句 ###

    ```javascript

    try {

    statements;

    } catch (variable){

    statements;

    }

    try {

    statements;

    } catch (variable){

    statements;

    } finally {

    statements;

    }

    ```

    ### continue 语句 ###

    避免使用continue语句。它很容易使得程序的逻辑过程晦涩难懂。

    ### with 语句 ###

    避免使用with语句。

    ## 注释 ##

    不要吝啬注释。

    i = 0; //让i等于0

    相关文章

      网友评论

          本文标题:JavaScript基本编码规范

          本文链接:https://www.haomeiwen.com/subject/cplixttx.html