一直以为JavaScript的变量和其他语言(如Java)一样,有块级作用域。今天看到了这样的代码:   显然JavaScript的局部变量作用域应属于函数级作用域,即在一个函数中声明的变量,无论是在哪里声明的,在整个函数中它们都是有定义的(详见这里 )。    
JavaScript自调用函数(self-invoking function)的例子,可以参见这里 。 我原来的程序是这样写的,使用了所谓的“单件对象 ”(Singleton object)的设计模式: Divo = function() { return { init : function() { //这里执行所有初始化功能 } }() Divo.init() 现在,改用自调用函数方式,写成这样: (function() { //这里执行所有初始化功能 })(); 好处: ...
例如,传统的写法:   if (!adding) win.hide()  可以写成下面的形式,效果相同: adding || win.hide() 如果是赋值语句,要注意整个语句用括号括起来,例如:   url || ( url = '.force_logout');     可以代替下面的写法: if (!url) url = '.force_logout'  
fangzhouxing
搜索本博客
存档
最新评论