Верстка, CSS, HTML, SVG

Что значит в JS += -= = == === >= <= расскажите, плз)

Андрей Шатров
Андрей Шатров
44 389
Лучший ответ
Объясню на примере:

var a = 1;

var b = 2;

a += b; //результат будет 3, т. к. a += b эквивалентно a = a + b.

___________________

var a = 3;

var b = 1;

a -= b; // результат равен 2, т. е. a -= b это a = a - b.

___________________

var a = 2;

var b = 6;

alert(b);

b = a;

alert(b); // первый alert выдаст 6, т. к. присвоено значение 6, потом же b присваивают 2 и 2-ой alert выдаст 2. Оператор "=" это не знак равенства, а оператор присваивания!!!!

___________________

var a = 3;

var b = 4;

if(a == b) alert('ok');

b = a;

if(a == b) alert('ok'); // оператор "==" используется для сравнения (!), оператор "=" для такой цели не годится, только "==". Т. к. в начале переменные не равны, то первый alert не выполнится, но потом, после присваивания a b, условие станет истинным и alert выполнится.

___________________

var a = 1;

var b = true;

if(a === b) alert('ok'); // alert не выполнится, потому что a не равно b. Но это не единственная причина! Некоторые типы переменных могут приводиться к одному типу. Если бы в блоке if был оператор "==", то alert выполнился бы, т. к. true (boolean) приводится к 1 (number). Но используется оператор "===" и alert не выполняется. Короче, оператор "===" возвращает true только тогда, когда сравниваемые переменные ОДНОГО типа!

___________________

Дальше без примеров. Всё просто: оператор ">=" читается как "больше или равно", оператор "<=" – "меньше или равно". Эти операторы, можно сказать, упрощают код.

Ну вот как-то так!