参考答案:
1function fn1 (name) {} 2 3function fn2 (name = '林三心') {} 4 5function fn3 (name, age = 22) {} 6 7function fn4 (name, age = 22, gender) {} 8 9function fn5(name = '林三心', age, gender) { } 10 11console.log(fn1.length) // 1 12console.log(fn2.length) // 0 13console.log(fn3.length) // 1 14console.log(fn4.length) // 1 15console.log(fn5.length) // 0
function的length,就是第一个具有默认值之前的参数个数。
在函数的形参中,还有剩余参数这个东西,那如果具有剩余参数,会是怎么算呢?
function fn1(name, ...args) {}
console.log(fn1.length) // 1
可以看出,剩余参数是不算进length的计算之中的。
所以,123['toString'].length + 123 = ?的答案是124
length 是函数对象的一个属性值,指该函数有多少个必须要传入的参数,即形参的个数。形参的数量不包括剩余参数个数,仅包括第一个具有默认值之前的参数个数
最近更新时间:2024-07-20