javascript函数的参数为复杂的字符串
比如定义了一个函数:function moveElement(elementID,final_x,final_y,interval),
其中第一个参数为字符串,后面三个位整数,然后在函数内部递归调用:
var repeat = "moveElement('" + elementID + "'," + final_x + "," + final_y + "," + interval + ")"; movement = setTimeout(repeat,interval);
我的问题是为什么参数repeat要写成字符串连接的形式,不能直接写成:
setTimeout("moveElement(elementID,final_x,final_y,interval)",interval);
在没有参数时不时就可以这样调用吗:
setTimeout("moveElement()",interval);
而且为什么还非要有‘elementID’这样的格式,来指定它是字符串呢?
谢谢!
------解决方案--------------------
你如果是用在setTimeout,又感觉参数很繁琐的话,你可以写成:
JScript code
setTimeout(function(){moveElement(elementID,final_x,final_y,interval)},interval);