开始想当然地认为可能像php或python等语言中一样
js 代码
function test(a,b="er"){
alert(a + b );
}
可是,定义完之后一直在报错:缺少对象.经过查询才发现,javascript中的确不能这样定义,可以借肋于arguments 是实参数组,参考下例:
js 代码
<script type="text/javascript">
function Test(a) {
var b = arguments[1] ? arguments[1] : 50;
return a + ':' + b;
}
alert(Test(5));
alert(Test(5,9));
</script>
测试后,果然成了。看来万事都有其规律,不能想当然。在此记录下来,免得以后再犯错。