js學習筆記()函數

來源:互聯網
上載者:User

標籤:

1、調用函數時,如果參數多於定義時的個數,則多餘的參數將會被忽略,如果少於定義時的個數則缺失的參數數會被自動賦予undefined值。

2、如果是用function語句聲明的函數定義則不可以出現在迴圈或條件陳述式中,但是如果是用函數直接量方法的函數定義則可以出現在任何js運算式中。

3、arguments對象

    函數的arguments對象就像一個數組,裡面儲存著函數調用時的實際參數,可以用arguments[0]、arguments[1]、arguments[2]…等來引用這些參數,即使這些參數在定義函數時是沒有的。但arguments並非真正的數組對象。

   function a(x,y){

            arguments[0]   //表示第一個參數x

            arguments[1]   //表示第一個參數y

            arguments[2]   //表示第三個參數,前提是在調用函數時傳入了三個參數 

            …

            arguments.length   //表示實際傳入參數的個數

            arguments.callee(x,y)   //調用自身 }

   arguments對象具有length屬性,表示的是函數調用時實際傳入的參數的個數。

   arguments對象還具有callee屬性,用來引用當前正在執行的函數,這個在匿名函數中尤其有用。

4、函數的length屬性(沒錯,函數也是具有length屬性的)

    與arguments.length不同,函數的length屬性工作表示的是在定義函數時的形參個數,而不是函數調用時的實際參數個數。可以用arguments.callee.length來調用函數的length屬性。

(轉)js學習筆記()函數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.