開始想當然地認為可能像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>
測試後,果然成了。看來萬事都有其規律,不能想當然。在此記錄下來,免得以後再犯錯。