var foo = a.foo or {}
var bar = foo.bar or {}
为每个嵌套级别执行此操作都很繁琐。
我能以某种方式改变吗?
var bar = a.foo.bar or {}
答案 0 :(得分:2)
您需要嵌套方法,可以查看logical operators和objects。
var bar = a && a.foo && a.foo.bar || {};
答案 1 :(得分:0)
在javascript中,您需要使用||
来表示or
。
var bar = a.foo.bar || {}; // However, a, a.foo may also be undefined
因此,您需要使用&&
运算符检查它们是否已定义:
var bar = a && a.foo && a.foo.bar || {};