[,,,] 的长度为3 javascript一开始就支持数组字面量的尾号逗号,随后在es2015中将对象字面量添加进入,在es2017中将其添加到函数中。
let arr = [1, 2, 3, ]
console.log(arr)
console.log(arr.length)
如果使用多个尾号逗号,在对数组使用forEach,map等方法时,会进行忽略。 在ES2015中,对象使用尾后逗号也是合法的。
let obj = {
name:"zs",
age:20,
}
console.log(obj)
函数中的尾后逗号 ES2017中支持函数参数的尾号逗号。
function add(a, b, ) {
return a + b
}
console.log(add.length)
const sub = (a, b, ) => a + b
console.log(sub.length)
除了在上式中函数,也可以是在对象的方法中进行设置。
let bar = {
foo: function (a, b, ) {
return a + b
}
}
console.log(bar.foo.length)
函数调用也是合法的,并且也是等价的
add(10,20,)
add(10,20)
不合法的尾号逗号 当函数不需要传递参数,但是在其中添加了一个逗号,会报错。 当函数剩余参数后面存在尾号逗号,会报错。 JSON中的尾号逗号 如果在json中存在尾号逗号,会直接报错。
|