老师,代码报错了
来源:5-1 函数扩展之默认参数
陈莺莺呀
2020-01-05 22:14:01
function add(a, b = 999 + b, c = 1) {
console.log(a, b);
}
add(1);

1回答
同学你好,在一个赋值语句中,是先执行等号右侧,然后再执行等号左侧。当执行999+b时,b还没有定义,所以会报错。问题截图中的报错信息大概意思就是“无法在初始化之前访问“b”

代码中把等号右侧的b去掉即可正常执行,如下修改:

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
相似问题