我认为我很难解释究竟什么不适合我。基本上我有这个功能:
createBalance(
{
ColumnData: [, {value: debit=0} = {}, {value: credit=0} = {}]
}, adj) {
// do stuff with debit and credit values
}
当我尝试使用没有列数据数组中第三个元素的对象调用函数时(例如createBalance({ ColumnData: [foo, {value:20}]} , bar)
),我得到错误" TypeError:无法读取属性'值&# 39;未定义"。
我是否尝试在此处错误地使用默认值?我觉得这个网站让我相信这种方法可行:http://www.2ality.com/2015/01/es6-destructuring.html(第1.6节)。
所有这一切,我确实有一个简单的解决方法。我重写了函数:
createBalance(
{
ColumnData: [, debit = {value:0}, credit = {value:0}]
}, adj) {
debit = debit.value;
credit = credit.value;
// carry on as before...
}
总结一下我的问题,我最初的尝试有什么问题?这是Babeljs目前不支持的事情,还是我误解违约(或解构)?