匿名函数:function后面没有标识符。匿名函数中this指向window
闭包:有权访问另一个作用域中的变量的函数。有两种情况:函数作为返回值(在一个函数内部创建另一个函数),函数作为参数传递
每个函数function都有一个prototype,即原型。这里再加一句话——每个对象都有一个proto,可成为隐式原型。
访问一个对象的属性时,先在基本属性中查找,如果没有,再沿着proto这条链向上找,这就是原型链。
在函数体的语句执行之前,arguments变量和函数的参数都已经被赋值。从这里可以看出,函数每被调用一次,都会产生一个新的执行上下文环境。
在函数中this到底取何值
一。如果函数作为构造函数用,那么其中的this就代表它即将new出来的对象。如果直接调用函数,就是window
二。函数作为对象的一个属性。如果函数作为对象的一个属性时,并且作为对象的一个属性被调用时,函数中的this指向该对象。
如果fn函数被赋值到了另一个变量中,并没有作为obj的一个属性被调用,那么this的值就是window(此时已经属于匿名函数了)
三。函数用call或者apply调用。this的值就取传入的对象的值
四。全局和调用匿名函数。this指向window