Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.09.2022, 07:49
Аспирант
Отправить личное сообщение для DenisZ Посмотреть профиль Найти все сообщения от DenisZ
 
Регистрация: 19.04.2022
Сообщений: 31

Изучение JS - if else и логические операторы
Здравствуйте! Изучаю JS.
Есть вопрос: набираю следующий код:
Код:
let p=[0,1,3,5];
let z=[0,2,4,6,8];
let pL = p.length;//Длина массива
let zL = z.length;
/*document.write(pL+" "+zL);*/
let d=true;
let c=false;
let r= prompt("Enter pL");
let r1= prompt("Enter zL");
if (r===4 && r1===5){
  document.write("<hr>"+r+"<br>"+r1+"<br>"+d);
}
else {
  document.write("<hr>"+r+"<br>"+r1+"<br>"+c);
}
[/code]
В результате, при вводе как правильных, так и неправильных значений,
все время выводится false. Почему?
Ответить с цитированием
  #2 (permalink)  
Старый 30.09.2022, 08:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

DenisZ,
потому что === , 4 и 5 числа, а r и r1 строки (читать всегда что возвращают любые функции, прежде чем их использовать).
https://learn.javascript.ru/alert-prompt-confirm#prompt
Цитата:
Вызов prompt возвращает текст, указанный в поле для ввода, или null, если ввод отменён пользователем.
Цитата:
Оператор строгого равенства === проверяет равенство без приведения типов.

Другими словами, если a и b имеют разные типы, то проверка a === b немедленно возвращает false без попытки их преобразования.
или так
if (r==4 && r1==5)

или так
if (r==='4' && r1==='5')

или так
if (+r===4 && +r1===5)

Последний раз редактировалось рони, 30.09.2022 в 08:21.
Ответить с цитированием
  #3 (permalink)  
Старый 30.09.2022, 20:02
Аспирант
Отправить личное сообщение для DenisZ Посмотреть профиль Найти все сообщения от DenisZ
 
Регистрация: 19.04.2022
Сообщений: 31

СПАСИБО!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как совместить данные php с js? deman1 Javascript под браузер 4 29.08.2021 20:39
Ищу JS разработчиков в лесу Kenjuy27 Работа 0 18.07.2018 09:06
Диалог между HTML и внешним JS в контексте расширения GoogleChrome ev1lart Events/DOM/Window 0 26.04.2017 19:25
BackEnd/FrontEnd Developer (Native JS) Abab Работа 0 25.12.2016 10:56
Картинка обрабатывается js 4yBaK Общие вопросы Javascript 10 11.09.2011 09:28