почему сравнение строки с номерами работает в JavaScript
в JavaScript, сравнения строки и номеров возможны из -за неотъемлемой гибкости его операторов. Эта функциональность определяется в §11.8.5 спецификации.
string с преобразованием номеров
При сравнении строк и чисел Javascript использует следующие правила:
-
- это поведение проявляется в интересных сценариях, таких как:
"90"> "100" (Strings, String Comparrison)
"90" использовать ли явное преобразование (например, parseint ()) или полагаться на неявное принуждение, является вопросом предпочтения. -
неявное принуждение:
Некоторые разработчики считают его приемлемым, чтобы на автоматическом преобразовании. Это позволяет легко сравнивать без необходимости изменять строку вручную.
явное преобразование: - другие предпочитают явно преобразовать строки в числа, используя такие функции, как parseint (). Это гарантирует, что вся строка рассматривается, предотвращая потенциальную путаницу или ошибки. parseint () и parsefloat (), соответственно.
unary - : преобразует всю строку в номер с плавающей точкой. Примечание: '' возвращает 0, а не nan.
number (str)
: эквивалент неявному преобразованию.
. 0. - Заключение
- Строка с номером Сравнение в JavaScript из -за способности языка динамически привести операнды к разным типам. Выбор между неявным принуждением и явным преобразованием зависит от личных предпочтений и стиля программирования. Понимая эти механизмы, вы можете написать более надежный и надежный код. ]