ES6解构对象,不用作函数参数时的赋值默认值?

Sea*_*son 3 javascript destructuring ecmascript-6

我有:

const fs = require('fs');

const packageConfig = JSON.parse(fs.readFileSync('./package.json'));
const { jspm: { configFile: jspmConfigFile }} = packageConfig;
Run Code Online (Sandbox Code Playgroud)

但它packageConfig的价值configFile可能是不确定的.在这种情况下,我想默认jspmConfigFile'config.js

是否可以在不创建扩展packageConfig对象的情况下执行此操作?

我意识到我可以这样做:

const { jspm: { configFile: jspmConfigFile }} = _.extend({
    jspm: { config: 'config.js'}
}, packageConfig);
Run Code Online (Sandbox Code Playgroud)

但这只是为了通过解构获得合理的默认值而非常混乱.

我错过了什么?

Rob*_*b W 5

对象解构中默认值的语法是:

const { jspm: { configFile: jspmConfigFile = 'config.js' }} = packageConfig;
Run Code Online (Sandbox Code Playgroud)

但这还没有在Firefox中实现:https://bugzilla.mozilla.org/show_bug.cgi?id = 932080