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

26-11-23 17:29:38


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

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

JavaScript предоставляет два оператора равенства: == (нестрогое равенство) и === (строгое равенство). Оператор == сравнивает значения на равенство после выполнения приведения типов, что означает, что он может преобразовывать операнды к одному типу перед сравнением.

let looseEquality = 5 == '5';
console.log(looseEquality); // Output: true

В этом примере оператор == выполняет приведение типов и считает значения равными. Однако часто предпочтительнее использовать оператор === для строгого равенства, который проверяет и значение, и тип без приведения типов.

let strictEquality = 5 === '5';
console.log(strictEquality); // Output: false

Здесь оператор === возвращает false, потому что он проверяет и значение, и тип, и они разные.

Операторы неравенства (!= и !==)

Аналогично JavaScript предоставляет два оператора неравенства: != (нестрогое неравенство) и !== (строгое неравенство). Оператор != выполняет приведение типов перед сравнением.

let looseInequality = 5 != '5';
console.log(looseInequality); // Output: false

В этом случае оператор != выполняет приведение типов и считает значения равными. Для строгого неравенства используйте !==.

let strictInequality = 5 !== '5';
console.log(strictInequality); // Output: true

Оператор !== проверяет и значение, и тип, и возвращает true в этом примере.

Операторы отношения (<, >, <=, >=)

Операторы отношения применяются для сравнения числовых значений. Они включают в себя < (меньше), > (больше), <= (меньше или равно) и >= (больше или равно).

let greaterThan = 10 > 5;
console.log(greaterThan); // Output: true

Здесь оператор > проверяет, является ли 10 больше 5, возвращая true.

let lessThanOrEqual = 3 <= 2;
console.log(lessThanOrEqual); // Output: false

Оператор <= проверяет, является ли 3 меньше или равным 2, возвращая false.

Логические операторы (&&, ||, !)

Логические операторы выполняют логические операции над значениями и возвращают булев результат. && (логическое И) возвращает true, если оба операнда true.

let logicalAnd = (5 > 3) && (10 < 20);
console.log(logicalAnd); // Output: true

В этом примере logicalAnd принимает значение true, потому что оба условия верны.

Также || (логическое ИЛИ) возвращает true, если хотя бы один из операндов true.

let logicalOr = (5 < 3) || (10 > 20);
console.log(logicalOr); // Output: true

В данном случае logicalOr равно true, так как второе условие верно.

Оператор ! (логическое НЕ) отрицает булево значение.

let logicalNot = !(5 > 3);
console.log(logicalNot); // Output: false

Здесь logicalNot равно false, потому что результат 5 > 3 равен true, и ! отрицает его.

Тернарный оператор (? : )

Тернарный оператор представляет собой краткий способ записи условного оператора. Он состоит из трех операндов: условия, за которым следует вопросительный знак, выражение, выполняемое при истине, и выражение, выполняемое при лжи.

let isEven = (10 % 2 === 0) ? 'Even' : 'Odd';
console.log(isEven); // Output: Even

В этом примере тернарный оператор проверяет, является ли 10 четным, присваивая значение 'Even' переменной четность, если условие истинно, и 'Odd', если ложно.

Понимание и владение этими операторами сравнения в JavaScript является важным для создания эффективного и надежного кода. Будь то работа с простыми условиями или сложными логическими операциями, твердое владение этими операторами позволит вам создавать более надежные и выразительные программы.