В соответствии с ECMA-262, частью 11.13, Ниже приводится исчерпывающий перечень составных операторов присваивания: *= /= %= += -= <<= >>= >>>= &= ^= |=.
В соответствии с частью 11.11, значение var c = a || bбудет помещено в aзначение true, cесли ToBoolean(a)оно истинно, а bзначение в cдругое значение . Как таковой, логическое ИЛИ часто используется как оператор объединения, например
function (options) {
options = options || {};
}
Достаточно часто, COALESCE используется для задания значения по умолчанию для переменной, как было показано выше: a = a || b.
Представляется , что составной оператор присваивания ||=будет очень полезно, что позволяет писать код , указанный выше в более короткие и более чистой моды: a ||= b. Тем не менее, это не существует (хотя *=, +=и другие операторы присваивания соединения).
Вопрос в том, почему?
+=, *=, -=, /=, почему бы не %=работать?).
angle %= 360или vertexIndex %= numberOfVertices(для списка вершин замкнутого многоугольника).
||=и &&=скоро будет: «Возможно, вы будете рады узнать, что для JS2 / ES4 также добавляются || = и && =. полезный из двух, но нет никаких причин оставлять опциональную форму && вне. " ,