关于小程序中箭头函数this指向的问题?
来源:25-3 使用Module和Class提取封装一个Movie对象
自由飞翔16
2017-06-09
var obj = {
say: function () {
var f1 = function () {
console.log(this); //windows
setTimeout(() => {
console.log(this); //windows
})
};
f1();
}
}
obj.say()老师,您好,为什么这里输出的结果两个windows呢?按照我的理解,箭头函数定义在obj里面,应该是输出一个windows,一个obj啊,如果我把函数改成如下,为什么又是输出两个obj呢
var obj2 = {
say: function () {
var f1 = () => {
console.log(this); // obj
setTimeout(() => {
console.log(this); // obj
})
}
f1();
}
}
obj2.say()写回答
1回答
-
7七月
2017-09-28
两次函数调用产生2次obj,这个没有什么问题吧。和箭头函数没关系呀。
00
相似问题