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