【发布时间】:2019-01-28 11:38:19
【问题描述】:
在浏览 JavaScript 的功能时,我在同一个函数中使用了默认参数和扩展语法。
let whatIsThis = (a, b = 2, ...c) => {
console.log("a = " + a, "b = " + b,"c = " + c)
}
whatIsThis(a = 1, c = [2,3,4,5,6,7,8])
运行后,我预计输出是这样的:
"a = 1"
"b = 2"
"c = 2,3,4,5,6,7,8"
但是我得到了这个:
"a = 1"
"b = 2,3,4,5,6,7,8"
"c = "
为什么这不起作用?
【问题讨论】:
-
您不能通过函数的名称来处理函数的参数。名称不会暴露给外部范围。
标签: javascript ecmascript-6 default-parameters spread-syntax