优艾设计网

为什么 arguments[0]() 这个输出的是 undefined ??

优艾设计网 https://www.uibq.com 2023-02-09 07:24 出处:网络 作者:PS基础教程
哪位大神帮我看看,为什么arguments优艾设计网_平面设计[0]() 这个输出的是 undefined ? var len = 10; var obj1 = { len:6, method:function(){ console.log(this.len); } }; var obj2 = { len:5, method:function

哪位大神帮我看看,为什么arguments优艾设计网_平面设计[0]() 这个输出的是 undefined ?

var len = 10; var obj1 = { len:6, method:function(){ console.log(this.len); } }; var obj2 = { len:5, method:function(fn){ console.log(fn);// obj1.method fn(); console.log(arguments[0]); arguments[0](); // undefined } };obj2.method(obj1.method,obj2.method);


混在乡下 优艾设计网_PS问答 14小时前

this和定义无关,和函数的调用方式有关。把函数当成参数传入,调用的时候直接调用,里面的this就是全局对象。


KieYve 优艾设计网_设计百科 13小时前

因为arguments[0]()调用的是obj1.method, 而obj1.method的function你没有return值。 函数没有写return时,默认返回undefined. 给obj1.method return个值arguments[0]();就不会是undefined了


0

精彩评论

暂无评论...
验证码 换一张
取 消