У меня есть несколько операторов if, которые выводят строки из соответствующего списка в зависимости от ввода (feelsLike).
Сначала он выводит диапазон, в котором находится feelLike, а затем добавляет в строку все, что есть в списке. Из консоли мы можем проверить, что feelLike равен 14, но каким-то образом он выполняет console.log во втором операторе if (6 <= feelLike <= 9). Не могли бы вы сказать мне, что я делаю неправильно?
1 ответ
6 <= feelsLike <= 9
Это не работает так, как вы хотите. Он не будет проверять, находится ли feelLike между 6 и 9. Вместо этого он проверит, является ли 6 <= feelslike
, и это разрешается либо true
, либо false
. Предположим, что это ложь, следующее, что он проверит, это false <= 9
. Это сравнение не имеет особого смысла, поэтому javascript превращает false в число, а именно 0
(true превратится в 1
). 0 меньше или равно 9, поэтому конечным результатом будет true
.
Вместо этого выполните 6 <= feelsLike && feelsLike <= 9
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript/JS) и его различных диалектах/реализациях (кроме ActionScript). Обратите внимание, что JavaScript — это НЕ Java. Включите все теги, относящиеся к вашему вопросу: например, [node.js], [jQuery], [JSON], [ReactJS], [angular], [ember.js], [vue.js], [typescript], [стройный] и т. д.