JavaScript - Операторы присваивания

Здравствуйте,野心勃勃的程序设计师们! Сегодня мы окунемся в захватывающий мир операторов присваивания JavaScript. Не волнуйтесь, если вы новички в программировании – я проведу вас через это шаг за шагом, как я делал это для countless студентов на протяжении многих лет моего преподавания. Давайте отправимся в это coding приключение вместе!

JavaScript - Assignment Operators

Операторы присваивания JavaScript

Операторы присваивания resemble рабоч horses программирования. Они помогают нам присваивать значения переменным, что является fundamental concept в программировании. Представьте переменные как коробки, где мы храним информацию, а операторы присваивания – как инструменты, которые мы используем, чтобы положить вещи в эти коробки.

Основной оператор присваивания (=)

Самый распространенный оператор присваивания – это знак равенства (=). Он прост, но силен. Давайте посмотрим на пример:

let myAge = 30;
console.log(myAge); // Вывод: 30

В этом примере мы создаем переменную myAge и присваиваем ей значение 30. Затем语句 console.log выводит это значение.

Но подождите, есть больше! Операторы присваивания могут делать больше, чем просто простые присваивания. Давайте исследуем некоторые более захватывающие!

Арифметические операторы присваивания

Арифметические операторы присваивания combine математические операции с присваиванием. Они resemble shortcuts, которые делают наш код более кратким и читаемым.

Вот таблица арифметических операторов присваивания:

Оператор Пример Эквивалентно
+= x += y x = x + y
-= x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y
**= x **= y x = x ** y

Давайте посмотрим, как они работают:

let score = 10;

score += 5; // score الآن 15
console.log(score); // Вывод: 15

score -= 3; // score الآن 12
console.log(score); // Вывод: 12

score *= 2; // score الآن 24
console.log(score); // Вывод: 24

score /= 4; // score الآن 6
console.log(score); // Вывод: 6

score %= 4; // score الآن 2 (остаток от деления 6 на 4)
console.log(score); // Вывод: 2

score **= 3; // score الآن 8 (2 в степени 3)
console.log(score); // Вывод: 8

Не ли это классно? Мы манипулировали нашей переменной score по-разному, не записывая каждый раз полные математические выражения.

Битовые операторы присваивания JavaScript

Теперь давайте отправимся в slightly более продвинутую территорию: битовые операторы присваивания. Эти операторы выполняют битовые операции и присваивают результат переменной. Не волнуйтесь, если это звучит сложно – я разберу это для вас!

Вот таблица битовых операторов присваивания:

Оператор Пример Эквивалентно
&= x &= y x = x & y
|= x |= y x = x | y
^= x ^= y x = x ^ y
<<= x <<= y x = x << y
>>= x >>= y x = x >> y
>>>= x >>>= y x = x >>> y

Давайте посмотрим на несколько примеров:

let bitwiseNum = 5; // Двоично: 0101

bitwiseNum &= 3; // Двоично: 0101 & 0011 = 0001
console.log(bitwiseNum); // Вывод: 1

bitwiseNum |= 6; // Двоично: 0001 | 0110 = 0111
console.log(bitwiseNum); // Вывод: 7

В этих примерах мы выполняем битовые операции AND (&) и OR (|). Это как secret code для компьютеров!

Операторы смещения присваивания JavaScript

Операторы смещения присваивания являются частью семьи битовых операторов, но они заслуживают особого внимания. Они смещают биты числа влево или вправо и присваивают результат переменной.

Мы уже видели их в предыдущей таблице, но давайте сосредоточимся на них:

Оператор Пример Эквивалентно
<<= x <<= y x = x << y
>>= x >>= y x = x >> y
>>>= x >>>= y x = x >>> y

Вот как они работают:

let shiftNum = 8; // Двоично: 1000

shiftNum <<= 1; // Сдвиг влево на 1, Двоично: 10000
console.log(shiftNum); // Вывод: 16

shiftNum >>= 2; // Сдвиг вправо на 2, Двоично: 0100
console.log(shiftNum); // Вывод: 4

Смещение битов resembles передвижение цифр в числе, но в двоичном виде. Это мощный инструмент для某些 типов вычислений!

Логические операторы присваивания JavaScript

Last but not least, давайте поговорим о логических операторах присваивания. Эти relatively новые дополнения к JavaScript, введенные в ES2021. Они combine логические операции с присваиванием.

Вот таблица логических операторов присваивания:

Оператор Пример Эквивалентно
&&= x &&= y x && (x = y)
||= x ||= y x || (x = y)
??= x ??= y x ?? (x = y)

Давайте посмотрим, как они работают:

let a = true;
let b = false;

a &&= 5; // a все еще true, поэтому становится 5
console.log(a); // Вывод: 5

b ||= 10; // b false, поэтому становится 10
console.log(b); // Вывод: 10

let c;
c ??= 15; // c undefined, поэтому становится 15
console.log(c); // Вывод: 15

Эти операторы великолепны для установки значений по умолчанию или условного обновления переменных.

И вот оно! Мы исследовали мир операторов присваивания JavaScript. Помните, что практика делает perfect. Попробуйте использовать эти операторы в своем собственном коде, и вскоре они станут для вас вторым nature. Счастливого программирования, будущие программисты!

Credits: Image by storyset