当前位置: 代码迷 >> Web前端 >> Chrome中函数实参加形参关联Bug
  详细解决方案

Chrome中函数实参加形参关联Bug

热度:291   发布时间:2012-10-25 10:58:57.0
Chrome中函数实参与形参关联Bug

?

Chrome中也有不少 Bug ,但更新修复速度极快。这里又有一个。重现如下

?

function func(x,y){
	//alert(x);
	arguments[1] = 5;
	alert(y); // --> 5
}	
func(3);

?

IE6/7/8/9beta,Firefox3.6,Safari4, Opera10中 y 弹出为undefined,Chrome7.0.544.0 dev?仍然为5。?

?

函数func定义了形参x,y;调用时实参为3。func内部修改了实参arguments[1],非Chrome浏览器中y不会与其关联,即为undefined。Chrome则相反,修改arguments[1]同时即修改了形参y。

?

修改形参y,实参arguments[1]在Chrome中同样被修改,即相互关联。

?

function func(x,y){
	//alert(x);
	y = 6;
	alert(arguments[1]); // --> 6
}	
func(3);
?

?

?

  相关解决方案