JavaScript之this,call,apply

  this:被调用的上下文对象;
  
  apply与call:切换被调用的上下文对象,即 调用时,this被临时性地切换
//demo 1 [call]
function forEach(list,callback){
	for(var i = 0, len = list.length; i < len; i++){
		callback.call(list[i],i);//切换this的上下文对象为:list[i]
	}
}

var weapons = ["shuiken","katana","nunchucks"];
forEach(
	weapons,
	function(index){
		assert(this == weapons[index],"Got value:" + weapons[index]);
	}
);
不使用call或者apply时:【目前,并不能看出,使用call,有什么好处】
原文地址:https://www.cnblogs.com/johnnyzen/p/7887917.html