php有个很方便的用法是在定义函数时能够直接给参数设默认值,如:php
function simue ($a=1,$b=2){
return $a+$b;
}
echo simue(); //输出3
echo simue(10); //输出12
echo simue(10,20); //输出30
但js却不能这么定义,若是写function simue(a=1,b=2){}会提示缺乏对象。html
js函数中有个储存参数的数组arguments ,全部函数得到的参数会被编译器挨个保存到这个数组中。因而咱们的js版支持参数默认值的函数能够经过另一种变通的方法实现,修改上例:数组
function simue (){
var a = arguments[0] ? arguments[0] : 1;
var b = arguments[1] ? arguments[1] : 2;
return a+b; } alert( simue() ); //输出3 alert( simue(10) ); //输出12 alert( simue(10,20) ); //输出30