日期:2014-05-16  浏览次数:20354 次

请问大家这段JavaScript的函数有何作用?
在调用这段JavaScript的函数时,为什么要设置第三个参数设置false,为什么第四个参数要设置 ' '(即空),请问哪们高手能解释一下这段JavaScript的函数的意思吗,而且调用时调用的参数跟函数里面的参数也一致,请各位高手指点一下,谢谢大家!
调用:
moveSelectedOptions(document.Form1.AllCate,   document.Form1.Cate,false,   ' ')
函数:
function   moveSelectedOptions(from,to)   {  
if   (arguments.length> 3)   {  
var   regex   =   arguments[3];  
if   (regex   !=   " ")   {  
unSelectMatchingOptions(from,regex);  
}  
}  

for   (var   i=0;   i <from.options.length;   i++)   {  
var   o   =   from.options[i];  
if   (o.selected)   {  
to.options[to.options.length]   =   new   Option(   o.text,   o.value,   false,   false);  
}  
}  

for   (var   i=(from.options.length-1);   i> =0;   i--)   {  
var   o   =   from.options[i];  
if   (o.selected)   {  
from.options[i]   =   null;  
}  
}  

if   ((arguments.length <3)   ||   (arguments[2]==true))   {  
sortSelect(from);  
sortSelect(to);  
}  
from.selectedIndex   =   -1;  
to.selectedIndex   =   -1;  
}  


------解决方案--------------------
在方法中用arguments[i];取的是第i+1个参数
方法里使用了
arguments[2]==true
var regex = arguments[3];
用与控制些流程
------解决方案--------------------