Почему одна строка больше, чем другая, при сравнении строк в JavaScript?
Я вижу этот код из книги:
var a = "one";
var b = "four";
a>b; // will return true
но в нем не упоминается, почему "один" больше, чем "четыре". Я попробовал c = "a"
, и он меньше, чем a и b. Я хочу знать, как JavaScript сравнивает эти строки.
Ответы
Ответ 1
Поскольку, как и во многих языках программирования, строки сравниваются лексикографически.
Вы можете подумать об этом как о более удобной версии в алфавитном порядке, причем разница в том, что буквенное упорядочение охватывает только 26 символов a
через z
.
Этот ответ находится в ответ на java, но логика точно такая же. Еще один хороший: String Compare "Logic" .
Ответ 2
"один" начинается с "o", "четыре" начинается с "f", "o" позже в алфавите, чем "f", поэтому "один" больше, чем "четыре". См. эту страницу для некоторых хороших примеров сопоставлений строк JavaScript (с пояснениями!).
Ответ 3
Javascript использует лексикографический порядок для оператора . 'f' продолжается 'o', поэтому сравнение "one" > "four" возвращает true
Ответ 4
Операторы сравнения используются в логических операторах для определения равенства или различия между переменными или значениями.
Вы можете видеть, что каждый оператор:
http://www.w3schools.com/js/js_comparisons.asp
Когда строка (Текст) вы должны использовать ==, === или! =
При сравнении чисел вы можете использовать > =, <= и т.д.
Ответ 5
вам нужно отправить их в целое число
Вот пример
if (parseInt($('#myRangeMin').val()) >= parseInt($('#myRangeMax').val()))