es6默认选项参数

时间:2016-03-17 17:17:29

标签: javascript ecmascript-6 default-parameters

在“了解ECMAScript6”中,

  

[默认对象]需要具有与析构化参数相同的所有信息(具有相同的默认值,以确保一致的行为),如此版本的setCookie()函数中的那个:

function setCookie(name, value,
    {
        secure = false,
        path = "/",
        domain = "example.com",
        expires = new Date(Date.now() + 360000000)
    } = {
        secure: false,
        path: "/",
        domain: "example.com",
        expires: new Date(Date.now() + 360000000)
    }
) {
    // ...
}

我的问题是为什么不简单地将解构对象设置为空对象?为什么它需要是具有相同信息的对象?我无法从复制默认值中感受到任何“胜利”。

1 个答案:

答案 0 :(得分:0)

确实,这是重复和不必要的; cf https://github.com/nzakas/understandinges6/issues/255