函数作用域

1.函数的作用域是定义函数的时候决定的,而不是执行函数的时候决定的。
如下图,函数自执行(掌握)
在这里插入图片描述
//弹窗的是10,因为不能访问同一个函数的变量,只能去全局作用域里面找。

2.this指向:在任意的作用域里面都有this指向,并且是关键词。
在同一个作用域里面的this指向是相同的,但是采用不同的执行方式,this指向是不一样的,区别于函数的作用域:函数的This指向是执行函数的时候决定的,而不是定义函数的时候决定的。
1)this指向window,因为是使用了window.aa();所以指向window
如图
在这里插入图片描述
2)事件this指向(掌握)
如图
在这里插入图片描述
3)对象指向
在这里插入图片描述
效果图
在这里插入图片描述

4)总结
在这里插入图片描述
3.改变this指向(处理逻辑更复杂的时候,需要使用this指向)
call和bind可改变this指向

1)针对函数本身
在这里插入图片描述
2)call 指向其他的变量
在这里插入图片描述
3)call 针对对象 call(自执行一次并且改变this)
在这里插入图片描述
4)bind: 既想要改变this指向,又不想要函数自执行的方法,使用bind,因为bind已经把this固定死了
在这里插入图片描述
5)apply也可以改变this指向
在这里插入图片描述
在这里插入图片描述
applay区别call在于传参
applay传参:只有两个参数,所有的实参都要放在数组里面,第一个参数是this指向
call传参:错开一位,让实参与形参一一对应,因为第一位已经使用在this指向了。
如图
在这里插入图片描述

在这里插入图片描述

总结:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值