素材牛VIP会员
直接调用arguments中的函数,this指针是如何发生的改变,为什么会指向arguments
 黑***枯  分类:JavaScript  人气:810  回帖:2  发布于6年前 收藏
var length = 10;
function fn() {
    console.log(this);
};
var obj = {
    length: 5, 
    method: function (fn) {
        arguments[0]();
    }
};
obj.method(fn, 1);

调用arguments中的fn,为什么this会指向arguments,求解惑,谢谢~

 标签:javascript

讨论这个帖子(2)垃圾回帖将一律封号处理……

Lv6 码匠
sc***29 PHP开发工程师 6年前#1

没毛病啊,你这种写法本来就是调用arguments的一个属性方法啊,this就指向了arguments,如果你把method中的代码变成fn(),this也就变成window了

Lv6 码匠
飞***n 技术总监 6年前#2

arguments 对象的属性调用 不指向arguments 指向什么??

这有什么疑惑的地方吗

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取