arguments的使用

  當咱們不肯定有多少參數傳遞的時候,能夠使用 arguments 來獲取,在 JavaScript 中, arguments 實際上它是當前函數的一個內置對象數組

全部的函數都內置了一個 arguments 對象,arguments 對象中 存儲了傳遞的全部實參瀏覽器

   例如:函數

    function numMax(){this

      var max=arguments[0];  // arguments 中存儲了numMax函數中的全部實參:23,45,96,87 spa

      for( var i=1; i<=arguments.length-1;i++){對象

        if(arguments[i] > max){索引

          max = arguments[i];ip

        }io

      }console

    }

    numMax(23,45,96,87);

在調用函數時,瀏覽器每次都會傳遞進兩個隱含的參數:

1. 函數的上下文對象 this

2. 封裝實參的對象 arguments

  - arguments 是一個類數組對象,它也能夠經過索引來操做數據,也能夠獲取長度

  - 在調用函數時,咱們所傳遞的實參都會在 arguments 中保存

  - arguments . length 能夠用來獲取實參的長度

  - 即便不定義形參,也能夠經過 arguments 來使用實參,只不過比較麻煩

    arguments[ 0 ] 表示第一個實參

    arguments[ 1 ] 表示第二個實參

  - arguments 裏面有一個屬性:callee,屬性對應一個函數對象,就是當前正在執行的函數的對象

    能夠使用 屬性 arguments 和函數 fun 作比較,相同返回 true,不然返回 false

    console . log( arguments . callee == fun ); // true

  例:

    function fun(){

      console . log( arguments instanceof Array ); // 判斷 arguments 是不是數組

      console . log( Array . isArray( arguments ) ); // 判斷 arguments 是不是數組

      console . log( arguments . length ); // fun 函數實參的長度

    }

    fun( );

相關文章
相關標籤/搜索