Выбор ответа Junior Типы и приведение обновлено

Сравнение строк с числами через <

Вопрос

Что выведет код?

console.log('10' < '9', '10' < 9);

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: true false. Если оба операнда строки, < сравнивает их посимвольно по кодам: '1' меньше '9', значит '10' < '9' это true.

Варианты ответа

  1. false false
  2. true falseправильный ответ
  3. true true
  4. false true

Разбор

Если оба операнда строки, < сравнивает их посимвольно по кодам: '1' меньше '9', значит '10' < '9' это true. Если хотя бы один операнд не строка, оба приводятся к числу: 10 < 9 даёт false. Именно поэтому значения из полей ввода перед сравнением переводят в числа. Варианты с false в первой позиции предполагают числовое сравнение строк, а его нет.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме