Fork me on GitHub

函数是一种特殊对象; 

对象:属性的集合(名-值对);

函数用来初始化(用new运算符)一个新建的对象称为构造函数。

对象中当属性是一个函数时,称其为方法。

函数体内,局部变量的优先级高于同名的全局变量。 

代码例子:

 var scope = "global";                 //声明一个全局变量

function checkscope(){                  
    var scope = "local";              //生命一个同名局部变量
    return scope;                // 返回的是局部变量的值,而不是全局变量的值             
}
 checkscope()                     //local

注意全局变量前可以不写var,但局部变量前必须写。


声明提前(hositing)代码例子:

var scope = "global";
function f(){
                                   //应该是  var scope;var提前到这
console.log(scope);        //输出undefined, not "global"   
var scope = "local";       //(scope = "local") var提前了    变量在这赋值,但变量本身在函数体内都是有定义的。
console.log(scope);        //输出"local"
}


 作用域链是一个对象列表或链表。这组对象定义了这段代码作用域中的变量。(还不太懂,待解

 

 posted on 2015-07-26 20:51  六人行与  阅读(138)  评论(0编辑  收藏  举报