Please note, this is a STATIC archive of website developer.mozilla.org from November 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Function.length

翻譯不完整。請協助 翻譯此英文文件

length property表示該 function 預期被傳入的參數數量

Property attributes of Function.length
Writable no
Enumerable no
Configurable yes

描述

length 是 function 物件的一個 property,表示該 function 預期被傳入的參數數量,這個數量並不包含 rest parameter 且只包涵第一個預設參數(Default Parameters)前的參數。相較之下 arguments.length 是 function 內部的物件,會提供真正傳進 function 中的參數數量。

Function 建構子的 data property

Function 建構子本身就是一個 Function 物件。其 length data property 的值為 1。此 property 的 attributes 包含: Writable: false, Enumerable: false, Configurable: true.

Function prototype 物件的 property

Function prototype 物件的 length property 其值為 0。

範例

console.log(Function.length); /* 1 */

console.log((function()        {}).length); /* 0 */
console.log((function(a)       {}).length); /* 1 */
console.log((function(a, b)    {}).length); /* 2 以此類推. */

console.log((function(...args) {}).length); /* 0, rest parameter 不包含在內 */

console.log((function(a, b = 1, c) {}).length); /* 1 */
// 只有在預設參數前的參數會被算到,也就是只有 a 會被視為必須傳入的參數
// 而 c 將被預設為 undefined

規範

規範 狀態 註釋
ECMAScript 1st Edition (ECMA-262) Standard 最初的定義,在 JavaScript 1.1 中實作。
ECMAScript 5.1 (ECMA-262)
The definition of 'Function.length' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Function.length' in that specification.
Standard 此 property 的 configurable attribute 現在為 true.
ECMAScript 2017 Draft (ECMA-262)
The definition of 'Function.length' in that specification.
Draft  

瀏覽器相容性

特點 Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Configurable: true ? 37 (37) ? ? ?
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
Configurable: true ? ? 37.0 (37) ? ? ?

可參閱

文件標籤與貢獻者

 此頁面的貢獻者: CYBAI, lessmind
 最近更新: CYBAI,