function bar(x=y, y=2){ // 此时形成暂时性死区 (是不是说明形参是let声明的了?) 如果不是let什么的就不应该出现暂时性死区把
return [x,y]
}
如果形参是let声明的,那么
function bar(x=2){
var x = 3; // 在里面重新定义了 x, 不是应该报错吗?
}
function bar(x=y, y=2){ // 此时形成暂时性死区 (是不是说明形参是let声明的了?) 如果不是let什么的就不应该出现暂时性死区把
return [x,y]
}
如果形参是let声明的,那么
function bar(x=2){
var x = 3; // 在里面重新定义了 x, 不是应该报错吗?
}
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
这种问题有点多啊。事实就是,参数既不是用let声明的,也不是用var声明的,它们有自己的声明方式,只是有些时候与let声明的有点像而已。