前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >选择篇(096)-下面代码的输出是什么?

选择篇(096)-下面代码的输出是什么?

作者头像
齐丶先丶森
发布2022-12-05 13:53:14
1450
发布2022-12-05 13:53:14
举报
文章被收录于专栏:前端面试秘籍
代码语言:javascript
复制
function sum(num1, num2 = num1) {
  console.log(num1 + num2)
}

sum(10)

  • A: NaN
  • B: 20
  • C: ReferenceError
  • D: undefined
答案: B

您可以将默认参数的值设置为函数的另一个参数,只要另一个参数定义在其之前即可。我们将值10传递给sum函数。如果sum函数只接收1个参数,则意味着没有传递num2的值,这种情况下,num1的值等于传递的值10num2的默认值是num1的值,即10num1 + num2返回20

如果您尝试将默认参数的值设置为后面定义的参数,则可能导致参数的值尚未初始化,从而引发错误。比如:

代码语言:javascript
复制
function test(m = n, n = 2) {
  console.log(m, n)
}
test() // Uncaught ReferenceError: Cannot access 'n' before initialization
test(3) // 3 2
test(3, 4) // 3 4
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端面试秘籍 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 答案: B
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档