call可以改變this的指向,下面一個forEach例子,我們可以在回調函數裏直接用this,和item是一樣的
(當基本類型是會變成object)
var forEach=function(obj,fn){
for(var i=0;i<obj.length;i++){
fn.call(obj[i],obj[i]);
}
}
forEach([1,2],function(item){
console.log(item);
});
forEach([1,2],function(){
console.log(this);
});