JavaScript Fundamentals

Мастерство числового сравнения в JavaScript

Spread the love

JavaScript предлагает мощные возможности для сравнения чисел, что является важнейшим аспектом создания динамичных и отзывчивых приложений. Это руководство изучает основные методы эффективного сравнения числовых значений.

Содержание

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

JavaScript предоставляет шесть основных операторов сравнения для оценки числовых соотношений. Эти операторы возвращают булево значение (true или false).

Оператор Описание Пример Результат
=== Строгое равенство (проверяет и значение, и тип) 5 === 5 true
!== Строгое неравенство 5 !== "5" true
> Больше чем 10 > 5 true
< Меньше чем 5 < 10 true
>= Больше или равно 10 >= 10 true
<= Меньше или равно 5 <= 10 true

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


5 == "5";  // true (происходит приведение типов)
5 === "5"; // false (строгое равенство; типы различны)

Логические операторы

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

Оператор Описание Пример Результат (если num1 = 10, num2 = 5)
&& Логическое И (оба условия должны быть истинными) (num1 > 5) && (num2 < 10) true
|| Логическое ИЛИ (хотя бы одно условие должно быть истинным) (num1 0) true
! Логическое НЕ (инвертирует булево значение) !(num1 === num2) true

let score = 85;

if (score >= 90 && score = 80 && score < 90) {
  console.log("Оценка B");
} else {
  console.log("Ниже оценки B");
}

Цепочки сравнений

Для более чистого кода используйте цепочки сравнений, когда проверяете, попадает ли число в заданный диапазон:


let age = 25;
if (18 <= age && age < 65) {
  console.log("Взрослый");
}

Обработка особых случаев (NaN, Infinity)

NaN (Not a Number) и Infinity требуют особого внимания:

  • NaN никогда не равен самому себе: NaN === NaN равно false. Используйте isNaN() для проверки на NaN.
  • Infinity и -Infinity имеют специфическое поведение при сравнении.

isNaN(Number("hello")); // true
Infinity > 1000; // true
-Infinity < -1000; // true

Заключение

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *