length 属性指明函数的形参个数。

Function.length 属性的属性特性:
writable false
enumerable false
configurable true

 

描述

length 是函数对象的一个属性值,指该函数有多少个必须要传入的参数,那些已定义了默认值的参数不算在内,比如function(xx = 0)的length是0。与之对比的是,  arguments.length 是函数被调用时实际传参的个数。

 

 MDN:

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Function/length

 

另外延伸出来一个小问题:

1..toString.length   1

1.toString.length : Uncaught SyntaxError: Invalid or unexpected token

 

解答:

http://stackoverflow.com/questions/12701609/1-tostring-syntaxerror-in-javascript

http://stackoverflow.com/questions/38968598/what-happened-inside-of-1-tostring-and-1-tostring-in-javascript

 

 

小疑问:

Number.toString.length

String.toString.length  都为0,为何

1.0.toString.length 为1,而"1.0".toString.length为0?

解答:

Number的toString()和Number对象的toString():

Number.toString():输出结果:"function Number() { [native code] }"
1.2.toString():输出结果:"1.2"

 

Number对象的toString()方法: 

定义和用法

toString() 方法可把一个 Number 对象转换为一个字符串,并返回结果。

语法

NumberObject.toString(radix)
参数描述
radix 可选。规定表示数字的基数,使 2 ~ 36 之间的整数。若省略该参数,则使用基数 10。但是要注意,如果该参数是 10 以外的其他值,则 ECMAScript 标准允许实现返回任意值。

返回值

数字的字符串表示。例如,当 radix 为 2 时,NumberObject 会被转换为二进制值表示的字符串。

具体见下面链接:

http://www.w3school.com.cn/jsref/jsref_tostring_number.asp

 

 posted on 2017-04-27 17:08  a12345531  阅读(127)  评论(0)    收藏  举报