如果没有,Javascript分配变量?

Nov*_*paX 2 javascript variable-assignment assignment-operator

如果评估为false,Javascript中是否有一些速记来分配变量?

在红宝石中,我可以这样做:

foo |= "bar"
Run Code Online (Sandbox Code Playgroud)

如果foo的计算结果为false,则将"bar"分配给foo,如下所示:(使用该| =运算符)

var cars_by_brand_and_color = {};
for (var car in parking_lot) {
   // add a brand if it doesn't exist yet;
   // cars_by_brand_and_color['chevrolet'] = {};
   cars_by_brand_and_color[car['brand']] |= {};
   // and add that color to the brand if it doesn't exist yet;
   // cars_by_brand_and_color['chevrolet']['grey'] |= {}; 
   cars_by_brand_and_color[car['brand']][car['color']] |= {};
   // now let's add that car; 
   // cars_by_brand_and_color['chevrolet']['grey']['BDB-565'] = 'Mr. Smith';
   cars_by_brand_and_color[car['brand']][car['color']][car['lisence_plate']] = car['owner']
};
Run Code Online (Sandbox Code Playgroud)

Gus*_*ors 5

当然,JS的语法是

var toAssign = mayBeNull || {};
Run Code Online (Sandbox Code Playgroud)