首页
学习
活动
专区
圈层
工具
发布

js this问题和es6箭头函数this问题

如果把最后一行代码修改为   o.m.apply(o); //1 ES6中箭头函数与普通函数this的区别 普通函数中的this: 1. this总是代表它的直接调用者, 例如 obj.func ,那么...this) }); } } obj.say(); 结果是:window 匿名函数,定时器中的函数,由于没有默认的宿主对象,所以默认this指向window 问题.../script> 结果:window,window 第一个this:f1调用时没有宿主对象,默认是window 第二个this:继承父级的this,父级的this指代的是window 关于this指向问题的讨论一直是学习...仿佛永远也填不完 var obj={ fn:function(){ console.log(this); } } obj.fn();//object 以上这段代码是再浅显不过的this指向问题...,this指向了window(匿名函数,没有调用的宿主对象),而window对象并没有num属性(num属性在obj中定义),而在使用箭头函数的情况下,this的指向却对象obj1,自然可以输出obj1

1.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    箭头函数

    箭头函数(★★★) ES6中新增的定义函数的方式。...this关键字,箭头函数中的this,指向的是函数定义位置的上下文this const obj = { name: '张三'} function fn () { console.log(...this);//this 指向 是obj对象 return () => { console.log(this);//this 指向 的是箭头函数定义的位置,那么这个箭头函数定义在...this,箭头函数中的this指向是它所定义的位置,可以简单理解成,定义箭头函数中的作用域的this指向谁,它就指向谁 箭头函数的优点在于解决了this执行环境所造成的一些问题。...比如:解决了匿名函数this指向的问题(匿名函数的执行环境具有全局性),包括setTimeout和setInterval中使用this所造成的问题 面试题 var age = 100; ​ var

    1.4K20
    领券