Why JavaScript?
因为它是Web浏览器的语言。
因为它使一门拥有极强表达能力的语言。
浏览器的API和文档对象模型(DOM)相当糟糕—Q:怎么糟糕了?—连累JavaScript遭到不公平的指责。
Analyzing JavaScript
优秀的想法:函数;弱类型;动态对象;对象字面量表示法。
糟糕的想法:基于全局变量的编程模型。
1.函数
JS中函数基于词法作用域-lexical scoping。
词法作用域在书写代码或者声明时确定的,而动态作用域在运行时确定的。例如:
function static(){
alert(foo);
}
function dynamic(){
var