我在类中有一个函数
MyClass.prototype.fn = function(){
/* ... some impressive code */
return {isA: value1, isB: value2};
}
最重要的是它返回一个对象
{isA: ?, isB: ?}
准备解构。
稍后我将拥有我的班级的实例:
MyClass myC;
但是,当我使用它时,MyClass 对象
myC
有可能为空。
所以我想使用条件运算符,以防万一
myC
为空。
我的问题是,有没有比直接创建临时对象并将
isA
和 isB
设置为 false 更好的方法来获取默认值?
即,这是最好的方法吗?
let {isA, isB} = myC ? myC.fn() : {isA: false, isB: false};
是的,您可以在解构本身中设置默认值,然后回退到右侧的空对象:
let { isA = false, isB = false } = myC?.fn() ?? {}