【问题标题】:How to destructuring with default value in ecmascript 6如何在 ecmascript 6 中使用默认值进行解构
【发布时间】:2015-11-11 16:18:10
【问题描述】:

如何使用默认参数进行破坏?

foo function({data, someOptional = 'default'}){
}

如何使用 ES6 的这些特性?

【问题讨论】:

  • {data, someOptional = 'default'} 应该可以正常工作。它有什么问题?
  • someOptional 总是得到'default'
  • 就是这样。如果不起作用,则代码运行的环境可能无法正确实现解构。
  • 我正在使用 webpack (1.12.2) 和 babel (5.6.4)
  • @snoof:仍然应该是function foo(…),而不是foo function(…)。是的,如果你没有通过someOptional,那么预计你会得到'default'?究竟出了什么问题?

标签: ecmascript-6 default-parameters destructuring


【解决方案1】:

您提到电话可能是:

  • foo({data:[123]})
  • foo({filterBy:'else'})

在第二个中,您没有传递data,这在您声明自己是函数的方式中不是可选的。

如果data也是可选的,你应该这样声明你的函数(指定data的默认值):

function foo({data=[], someOptional='default'}){}

这样,您就可以拨打您提到的电话。

不过,如果您根本不想传递任何参数并依赖默认参数,则应该这样声明:

function foo({data=[], someOptional='default'} = {}){}

这样你甚至可以拨打这种电话:foo()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 2016-11-23
    • 2018-08-20
    • 2014-07-23
    • 1970-01-01
    • 2012-09-28
    • 1970-01-01
    相关资源
    最近更新 更多