Цикл статей «Учебник Javascript».
Следующая статья — «Операторы ветвления в Javascript: if, “?”».
Предыдущая статья — «Операции в Javascript. Приоритеты операций.».
Операторы сравнения в Javascript: >, <, >=, <=, ==, !=, ===, !==. Они возвращают логическое true или логическое false. Их результат можно использовать в конструкциях ветвления, цикла, а также присваивать переменным. Числа сравниваются как числа, строки сравниваются по буквам. Более короткая строка меньше более длинной. Буквы сравниваются согласно коду в таблице юникода.
При сравнении значений различных типов происходит преобразование к числу. Например, строка ‘2’ преобразуется в число 2, логическое false — в число 0, логическое true — в число 1.Примеры:
1 2 3 |
alert(3>5); //false alert(4 == 4); //true alert(true > '0'); //true |
Есть небольшие странности в том, что null и undefined равны (==) друг другу. Но при сравнении (==) с чем либо ещё возвращается false. При этом для других операторов сравнения (>, <, <=, >=) происходит преобразование к числу и тогда null становится нулём, а undefined становится NaN.
1 2 3 4 5 6 |
alert(null == undefined); //true alert(null > 0); //false. Здесь null преобразуется в число 0. alert(null >= 0); //true. Здесь null преобразуется в число 0. alert(null == 0); //false. Так как null == только undefined и никому больше. alert(undefined >=0); //false. undefined преобразуется в NaN, который при всех сравнениях даёт false. alert(undefined == 0); //false. undefined == только null. |
Строгое равенство и строгое неравенство ===, !==. Работают также, как и == и != но не производят преобразования типов. То есть две переменные будут равны только если их типы равны и значения равны.
Цикл статей «Учебник Javascript».
Следующая статья — «Операторы ветвления в Javascript: if, “?”».
Предыдущая статья — «Операции в Javascript. Приоритеты операций.».