返回在 javascript 对象中找不到的键的默认值

Muh*_*glu 5 javascript

当调用不在对象中的键时,将返回 undefined。我想返回一个我指定的字符串而不是未定义的字符串。例如

let obj = {
  key1: 'key1'
}
let res = obj.key2;

console.log(res);
Run Code Online (Sandbox Code Playgroud)

我想console.log (res)返回“找不到密钥”,而不是undefined。

这可能吗?

Nin*_*olz 7

您可以采用Nullish 合并运算符??,它会考虑除或 之外的其他虚假值。undefinednull

let obj = { key1: 'key1' },
    res = obj.key2 ?? 'key2 not found';

console.log(res);
Run Code Online (Sandbox Code Playgroud)

如果undefined/null是真实值,则应提前检查密钥。

let obj = { key1: null },
    res = 'key1' in obj ? obj.key1 : 'key2 not found';

console.log(res);
Run Code Online (Sandbox Code Playgroud)