js常用代码规范

全局命名空间的定义

在定义全局函数以及变量时,使用正确的全局命名空间。
错误做法:

var a = 10;
var b = 20;

规范格式

;function(window){
    'use strict';
    var a = 10;
    var b = 20;
}(window);

立即执行函数
立即执行函数对全局变量的引用应该通过参数的形式来进行,即以局部变量的形式来进行。
错误做法:

 (function(){
    var a = 10;
    var b = 20;
    var c = window.a + window.b;
    $("body").click(function(){
    });
  });

规范格式:

;(function($,window){
    var a = 10; 
    var b = 20;
    var c = window.a + window.b;
    $("body").click(function(){
    });
});

严格模式
严格模式可在整个脚本或者某个方法内被指定,它可以对当前作用域下的js内容进行更严格的检查,以防止代码中出现未来可能出现的js关键字,同时也确保的js代码的健壮性。我们应该尽可能确保严格模式作用域方法内,而不要作用域函数内,以保证第三方类库的兼容性。
错误做法:

'use strict'
;(function(){
});

规范格式:

;(function(){
    'use strict';
})

语句块内的函数声明
我们应该禁止在语句块内对函数做声明定义,正确的做法是对函数的定义放在作用域的顶部,而在语句块内进行赋值操作。
错误做法:

if(a){
    function test(){}
}

规范做法

if(a){
    var test = function(){}
}

你可能感兴趣的:(常见规范)