JS函数参数默认值,参数为对象时 默认属性值

发布于 2022-09-30 23:11:01 字数 278 浏览 26 评论 0

  function log(people) {
     people.age ??= 15
     console.log(people);
  }

  log({ name: 'Tom' })
  log({ name: 'Bob', age: 18 })

想达到上面同样的效果,给予形参people的age属性默认值,
请问如何在function log(people) 小括号内的people处写?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风柔一江水 2022-10-07 23:11:01

这 JS 做不到。

要么在函数内用 Object.assign、展开运算符或其他方式给初值。

要么在形参那定义成解构形式的给初值。不推荐这种,你这要是有 20 个字段,形参解构了得变多长啊?

伪心 2022-10-07 23:11:01
function log(people) {
  console.log(Object.assign({
    age: 15,
  }, people));
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文