首页 > Web开发 > 详细

JS中this的指向和ES6的箭头函数

时间:2019-10-05 15:08:12      阅读:76      评论:0      收藏:0      [点我收藏+]

JS中的this

JS中this的指向一般可以直接归成一条规律

====》 函数中的this

function f1(){ return this; } f1() === window; // true

网上分析较多,因而将其汇总:函数中的this 一般都指向调用这个函数的对象

直接写在document下的都会指向window对象。内联事件函数中的this也是同理

而写在对象中的函数也会遵守(指向调用这个函数的对象)这条规律。

而其中有几个例外:

1. DOM事件监听绑定的函数中的this指向的是触发函数的DOM元素

2.Function.prototype.bind 通过bind方法绑定后, 函数将被永远绑定在其第一个对象上

3.setTimeout & setInterval 中函数里的this指向window

4.构造函数中的this永远指向创建的实例对象(这里的函数 指原型方法,即绑定进proptype的方法 而非static静态方法,静态方法依旧是谁调用指向谁,用变量接收方法并执行,则指向window)

技术分享图片

ES6的箭头函数

技术分享图片
箭头函数自身并不绑定this,内部的this会自动指向上下文中与之最邻近的有定义this的对象上
解决了函数嵌套中this的指向不明问题

JS中this的指向和ES6的箭头函数

原文:https://www.cnblogs.com/chujunqiao/p/11624635.html

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