我们在PHP或C/C++中可以定义一个类似这样的函数:
function func(int num=1) { ... }
那么当调用func时,如果没有参数,那么默认为1,而在JavaScript中是不可以直接这样写的,而实现类似的功能可以用javascript 的arguments对象:
该对象代表正在执行的函数和调用它的函数的参数。
使用方法如下:
[function.]arguments[n]
function
可选项。当前正在执行的 Function 对象的名字。
n
必选项。要传递给 Function 对象的从0开始的参数值索引。
对于我们的需求可以用以下方法实现:
以下为引用的内容: <script language=javascript> function writestr() { var str = arguments[0] || "我是默认参数"; return str; } document.write(writestr()+"<br>"); document.write(writestr("我是设定的参数")+"<br>"); </script> |
在这个例子中我们只定义了一个默认的参数,如果你想定义二个,可以在函数里多加一个
var str2 = arguments[0] || "我是默认参数2"; 即可.
注意:使用这种方法有个问题,就是当参数是 0,false,null时为无效