发表于: 2017-02-20 01:54:38
0 1130
今天完成的事情:
看了下红宝书,主要就是闭包和this指代
明天计划的事情:
继续看js基础知识
遇到的问题:
this指代好麻烦,看了红宝书很多例子还是弄错了
收获:
闭包:js闭包 就是变量解析的过程
每次定义一个函数,都会产生一个作用域链($scope chain),当js寻找变量variable时(这个过程称为变量解析),总会优先在当前作用域链的第一个对象中查找属性variable,如果找到则直接使用这个属性,否则,继续查找下一个对象的是否存在这个属性,这个过程持续直至找到这个属性或者最终未找到引发错误为止。
当全局变量访问函数内局部变量时,因为局部变量作用域只在函数内,所以无法访问。但通过闭包就可以让全局变量跨作用域访问局部变量:
闭包的用途:1.读取函数内部的变量 2.让这些内部变量的值始终保存在内存中。注意:函数内部,如果没有var关键字这个函数就是全局变量。
this:this是js中的一个关键字,它代表函数运行时,自动生成的一个内部对象。
func.call(context,p1,p2)
this就是代码中的context
评论