Чистый код Короткие заметки веб-разработчика

Почему 2 больше 11 в JavaScript?

Увидел интересный вопрос на тостере. Вообще, это основы основ и если вы не знаете, почему же 2 действительно больше 11 — то вам стоит срочно прочитать эту статьи, а затем начинать учить JavaScript.

Весь секрет в типах переменных. Вот пример, из которого всё становится понятно:

console.log("2" > "11"); //true
console.log(2 > 11); //Вернёт false, как и должно

Если вам всё ещё ничего не понятно, то вам стоит озаботится основами программирования.

Всё дело в том, что в первом случае сравниваются строки, а не числа. И из строк «2» больше, чем «1». В то время как если сравнивать числа, то сравниваются не только первые символы, а всё число вместе.

Для приведения строки к числу следует использовать функцию parseInt(), а если число с точкой — то parseFloat().

console.log(parseInt("11")); //Это будет число 11
console.log(parseFloat("1.1")); //Это будет число 1.1

Ещё про типы данных в JavaScript.