我喜欢有一些干净的代码:
var currentVar = aBigObject['Key1']['Key2']['Key3'];
generalValues.push(((!currentVar) ? 0 : currentVar));
另一种选择(我认为)是这样的:
if (!aBigObject['Key1']['Key2][Key3']) generalValues.push(0);
else generalValues.push(aBigObject['Key1']['Key2']['Key3']);
对我来说,第二个不必要地冗长且难以阅读。我的问题是,将变量设置为可能未定义的东西真的安全/良好吗?