Я не думаю, что вопрос был «как заставить этот код работать», а скорее «объяснить, почему он не работает так, как я ожидаю».

новании этих правил:

Falsy:

ложный0 (ноль)'' или "" (пустая строка)значение NULLundefindedNaN (например, результат 1/0)

Truthy: Все остальное

Я не могу найти правильное объяснение того, почему в следующих тестах только номер 1 оценивается как «истинный»

0 == true ("false")
1 == true ("true")
2 == true ("false")
othernumber == true ("false")

Ответы на вопрос(6)

Ваш ответ на вопрос