0

众所周知,ES2020 支持 optionalChaining。例如,我们可以编写如下代码: let x = {a:{b:'c'}}; 控制台.log(x?.a?.b); 我们会得到'c'。

但是在某些情况下,我们可能想要使用像 x[a][b] 这样的表达式而不是 xab 我们可以使用像 x?[a]?[b] 这样的表达式来评估每个链接对象的验证吗?

4

1 回答 1

1

括号表示法的语法相同:

 x?.[a]?.[b]

例子:

const x = {a:{b:'c'}};
const a = 'a';
const b = 'b';

const result = x?.[a]?.[b];

console.log(result);

于 2020-05-16T07:13:21.297 回答