Var

1、没有var

简明的说,定义变量时省略var是不安全的,不过是合法的。这时无论该变量是在什么位置定义的,解释器都会赋予该变量以全局作用域。

2、有var

安全的,合法的。定义的变量的作用域取决于定义的位置。


getCookie: function (c_name) {
            if (document.cookie.length > 0) {
                c_start = document.cookie.indexOf(c_name + "=")
                if (c_start != -1) {
                    c_start = c_start + c_name.length + 1
                    c_end = document.cookie.indexOf(";", c_start)
                    if (c_end == -1) c_end = document.cookie.length
                    return unescape(document.cookie.substring(c_start, c_end))
                }
            }
            return ""
        }

()()的原理

(function(){

console.log(1);

})()
//一般函数
function demo(){

console.log('demo');

}

demo();
声明一个函数demo,执行时demo() 同样原理 (匿名函数)() 执行函数

下面函数就好理解了,调用函数时传入了一个参数param

(function(arg){…})(param)

链接描述这个我的个人博客,欢迎关注


爱捣蛋的灰太狼
88 声望33 粉丝