Javascript函數參數與其他語言有所不同,其在內部是用一個數組來表示。在函數體內可以通過arguments對象來訪問這個參數數組,arguments[0]訪問第一個參數,arguments[i] 訪問第 i 個參數。因此,函數定義時,可以不顯式地使用命名參數。
<script type="text/javascript">
function doAdd(){
var result=0;
for(var i=0;i<arguments.length;i++){
result+=arguments[i];
}
return result;
}
alert(doAdd(1,3,6)); //10
alert(doAdd()); //0
alert(doAdd(2,5,6,7,3));//23
alert(doAdd('a',2)); //0a2
</script>
這個列子實現了任意個數相加(如果傳入的參數中有字符串,則實現字符串連接),通過arguments對象訪問傳入的所有參數。