首页 > Web开发 > 详细

JS(作用域和闭包)

时间:2018-05-04 20:08:41      阅读:220      评论:0      收藏:0      [点我收藏+]

1.对变量提升的理解

2.说明 this 几种不同的使用场景

3.创建10个 <a>标签,点击的时候弹出来对应的序号

4.如何理解作用域

5.实际开发中闭包的应用

 

一、执行上下文

技术分享图片

1.范围:一段<script>或者一个函数  (都会生成一个执行上下文

2.全局:变量定义、函数声明  (一段<script>先将变量定义和函数声明拿出来)

3.函数:变量定义、函数声明、this、arguments  (一个函数在执行之前姜变量定义、函数声明、this、arguments 拿出来)

函数声明:

技术分享图片

 将整个函数拿出来,故 function fn(name) 输出为 ‘zhangsan‘ 20  

函数表达式:

技术分享图片

先将变量定义拿出来,即将 a 拿出来,故console.log(a) 输出 undefined(代替)

 (不推荐这样写,应将 定义 var a = 100 放在前面)

二、this

this 要在执行时(函数后面有())才能确认值,定义时无法确认

技术分享图片

常见用法

1.作为构造函数执行

2.作为对象属性执行

3.作为普通函数执行(this === window)

4.call apply bind

三、作用域

四、作用域链

五、闭包

 

JS(作用域和闭包)

原文:https://www.cnblogs.com/jianghao233/p/8992289.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!