首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

关于apply call 关于不定长参数,该如何解决

2013-07-26 
关于apply call 关于不定长参数有函数A和函数B,函数A和函数B的参数都是不定长的,参数顺序、类型完全一致。现

关于apply call 关于不定长参数
有函数A和函数B,函数A和函数B的参数都是不定长的,参数顺序、类型完全一致。现在要在函数A中调用函数B,但是在调用函数B之前,第一个参数已经作了修改,怎么把修改后的参数传给函数B?用apply call的话怎么写呀?

大概是这样子:

var func_B=function(A,B,C....){
//操作不定长的arguments
}

var func_A=function(A,B,C,,,,,){

//操作A
AA=A+1;

//调用func_B。传入的是修改之后的参数值
func_B(AA,B,C....)

}

求教坛子里的大神们!!~~
[解决办法]
可以,比如下面的例子,alert 50而不是最初的100.
用法就是 函数.apply(this, arguments)
用call也可以,但不好操作,apply可以直接传参数数组。
关于apply和call建议读一读这篇
http://www.cnblogs.com/fighting_cp/archive/2010/09/20/1831844.html


function func1()
{
arguments[1] = 50;
func2.apply(this, arguments);
}
function func2()
{
alert(arguments[1]);
}

func1("abc",100,new Object());

热点排行