我正在执行以下对象访问。但是 TS 抱怨即使我检查它也可能未定义。
if (metrics[key0]) {
if (metrics[key0][key1]) {
[…]metrics[key0][key1]]);
}
}
=> 第 2 行和第 4 行中的错误 TS2532。 游乐场示例:Click Me
当我将其更改为 metrics[key0]?.[key1]
时,错误消失了。但我为什么需要那个?如果它不能为空或未定义?
编辑:请不要再次将其标记为 this 的重复项。在该主题中,没有检查 null 或 undefined。