[JavaScript] obj['method']()与arguments[0]()

obj.method()这样调用,会导致method方法中的this的指向obj
obj.method相当于obj['method']
obj['method']()这样调用,method中的this也指向obj

相似的,
因为arguments是一个类数组对象,而arguments[0]可以是一个函数,
于是arugments[0](),就是调用了arguments对象的名为0的方法。
所以这个方法中,this的指向是arguments对象。

例如:

function test(){
    arguments[0]();
}

test(function(){
    alert(this);    //[object  Arguments]
});

你可能感兴趣的:([JavaScript] obj['method']()与arguments[0]())