|
今天与同事一起看了一个javscript定义函数问题,如何在定义一个函数里给参数一个默认值.
开始想当然地认为可能像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> 测试后,果然成了。看来万事都有其规律,不能想当然。在此记录下来,免得以后再犯错。 |
|