arguments小筆記

為什么說arguments是偽(類)數組?
答:因為arguments它不是數組,卻用起來像數組,有length屬性和[ ]訪問成員。但是不具有數據的方法,如join()concat()等。。。

怎樣將arguments轉換成數組

Array.prototype.slice.apply(arguments)
image.png

轉換前


image.png

轉換后


image.png

1、數組長度

window.onload = function(){

        function abc(){
            console.log(arguments.length)
        }
        abc(1,2,3)

  }// 3

2、改變參數值

window.onload = function(){

        function abc(x,y,z){
              arguments[2] = "hello";
              for(var i=0;i<=arguments.length;i++){
                    console.log(" "+arguments[i]);
              }

          }
        abc(1,2,3)

  }// 1,2,hello

3、遞歸(callee()調用自身)

求1到n的自然數之和

function add(x){
            if(x == 1) return 1;
            else return x + arguments.callee(x-1);
         }
         console.log(add(5))//15

對于沒有命名的函數

var result = function(x){
              if(x == 1) return 1;
              return x+arguments.callee(x-1);
          }
         console.log(result(5))//15
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 第5章 引用類型(返回首頁) 本章內容 使用對象 創建并操作數組 理解基本的JavaScript類型 使用基本類型...
    大學一百閱讀 3,270評論 0 4
  • ??引用類型的值(對象)是引用類型的一個實例。 ??在 ECMAscript 中,引用類型是一種數據結構,用于將數...
    霜天曉閱讀 1,092評論 0 1
  • 本章內容 使用對象 創建并操作數組 理解基本的 JavaScript 類型 使用基本類型和基本包裝類型 引用類型的...
    悶油瓶小張閱讀 697評論 0 0
  • 第一部分 準入訓練 第1章 進入忍者世界 js開發人員通常使用js庫來實現通用和可重用的功能。這些庫需要簡單易用,...
    如201608閱讀 1,370評論 1 2
  • 第三章 類型、值和變量 1、存取字符串、數字或布爾值的屬性時創建的臨時對象稱做包裝對象,它只是偶爾用來區分字符串值...
    坤少卡卡閱讀 656評論 0 1