JavaScript:使用条件语句进行解构

Dam*_*ris 2 javascript ecmascript-6

我想获得firstNamelastName从整体性能user对象.我也需要使用条件语句.怎么做那样的事情?

getUserById(id)getUserByAddress(id)使用find()返回元素或的JavaScript 方法undefined.

let { firstName, lastName } = getUserById(id);
if ({ firstName, lastName } === undefined) {
  { firstName, lastName } = getUserByAddress(id);
}
return `${firstName} ${lastName}`;
Run Code Online (Sandbox Code Playgroud)

Mat*_*thi 13

const { firstName, lastName } = getUserById(id) || getUserByAddress(id) || {};
if (firstName && lastName) {
    return `${firstName} ${lastName}`;
}
return "Unknown user";
Run Code Online (Sandbox Code Playgroud)

如果getUserById(id)是假的,getUserByAddress(id)将被执行.如果这也是假的,{}至少会防止抛出错误.