Книга: JavaScript. Подробное руководство, 6-е издание

4.11.1. Присваивание с операцией

4.11.1. Присваивание с операцией

Помимо обычного оператора присваивания = в языке JavaScript поддерживается несколько других операторов, объединяющих присваивание с некоторой другой операцией. Например, оператор += выполняет сложение и присваивание. Следующее выражение:

total += sales_tax

эквивалентно выражению:

total = total + sales_tax

Как можно было ожидать, оператор += работает и с числами, и со строками. Для числовых операндов он выполняет сложение и присваивание, а для строковых -конкатенацию и присваивание.

Из подобных ему операторов можно назвать -=, *=, &= и др. Все операторы присваивания с операцией перечислены в табл. 4.2.


В большинстве случаев выражение:

а ор= b

где ор означает оператор, эквивалентно выражению:

а = a op b

В первой строке выражение а вычисляется только один раз. Во второй - дважды. Эти выражения отличаются, только если подвыражение а содержит операции, имеющие побочные эффекты, такие как вызов функции или оператор инкремента. Например, следующие два выражения присваивания неэквивалентны:

data[i++] *= 2;
data[i++] = data[i++] * 2;

Оглавление книги


Генерация: 0.581. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз