js问题
1.闭包
a.内部函数返回到外部,依赖于外部函数,使外部函数中的变量存在保存在内存中。导致的问题,过度使用闭包,IE中会出现内存溢出。
b.外部不能访问函数中的局部变量,当使用闭包,可以访问到函数中的局部变量。相当于访问到函数对象的私有变量,闭包函数使公共方法。
2.作用域链
作用域的使用的使用提高了程序逻辑的局部性,增强程序的可靠性,减少名字冲突。
js的的执行环境有两类,全局执行环境 ,即window代表的全局环境;另一类是函数代表的函数执行环境,也就是局部作用域。
variable object,变量对象或者上下文变量,上下文变量存储的是上下文变量所在执行环境里所有的函数和变量
3.this指针
js中,没有通过new(包含对象字面量定义),apply(),call()改变函数的this指针,this指针都是指向window对象,其中包括函数表达式和函数定义内部的函数表达式。