VIP campusboy 912 Posted April 23, 2015 VIP Report Share Posted April 23, 2015 Начал изучать JS и столкнулся с проблемой. Пишу <script> var index = true; while (index){ var name = prompt("Ваше имя", "Семён Семёныч"); if (name){ document.write ("Привет, " + name); index = false; } } </script> или <script> var index = true; while (index){ var name = prompt("Ваше имя", "Семён Семёныч"); if (name != null){ document.write ("Привет, " + name); index = false; } } </script> Но всё равно, если не ввести имя, то выкидывает "Привет, null". Почему? Конечно, можно сделать через do while всё (так и в видеоуроке), но вот поставил цель разобраться в вопросе. Что-то в php таких проблем у меня не было Link to post Share on other sites
VIP campusboy 912 Posted April 23, 2015 Author VIP Report Share Posted April 23, 2015 Сам отвечаю на вопрос. Вот так работает: <script> var index = true; while (index){ var name = prompt("Ваше имя", "Семён Семёныч"); if (name != "null"){ document.write ("Привет, " + name); index = false; } } </script> Почему-то null идет как строчка, получается так? Link to post Share on other sites
VIP styoplotr 514 Posted April 23, 2015 VIP Report Share Posted April 23, 2015 Когда вы нажимаете ок введя пустое имя функция prompt возвращает пустую строку, когда вы нажимаете cancel функция prompt возвращает string null который ничем не отличается от обычной строки, javascript как известно работает в браузере и это зависит от браузера, советую вам в изучении javascript всегда в таких ситуациях использовать typeof для проверки переменных. campusboy 1 Link to post Share on other sites
VIP campusboy 912 Posted April 23, 2015 Author VIP Report Share Posted April 23, 2015 Когда вы нажимаете ок введя пустое имя функция prompt возвращает пустую строку, когда вы нажимаете cancel функция prompt возвращает string null который ничем не отличается от обычной строки, javascript как известно работает в браузере и это зависит от браузера, советую вам в изучении javascript всегда в таких ситуациях использовать typeof для проверки переменных. Большое спасибо за ответ. Урок (от Специалист) просто 2011 года и показывается на старом Эксплоуре. Может тогда это и прокативало. Вот как там сделано: <script type="text/javascript"> var name; do { name = prompt("Ваше имя", ""); } while ((name == null) || (name == "")) document.write ("Привет, " + name); </script> После повтора,урока у меня не заработало, как у лектора. Видать, браузеры изменились. Ещё раз спасибо за наводку. styoplotr 1 Link to post Share on other sites
VIP styoplotr 514 Posted April 23, 2015 VIP Report Share Posted April 23, 2015 Как я понял php вы владеете поэтому советую вам не смотреть видеоуроки они мешают думать, читайте книжки фленагана например или стандарты mdn, решайте задачи, задавайте вопросы, видеоуроки заставляют повторять а не думать. campusboy 1 Link to post Share on other sites
VIP campusboy 912 Posted April 23, 2015 Author VIP Report Share Posted April 23, 2015 Как я понял php вы владеете поэтому советую вам не смотреть видеоуроки они мешают думать, читайте книжки фленагана например или стандарты mdn, решайте задачи, задавайте вопросы, видеоуроки заставляют повторять а не думать. Не могу согласиться. Смотря как их смотреть. Благодаря этим видеоурокам я смог изучить основы PHP с лёгкостью, а вот по книгам так и не смог. Видеоуроки - это как быстрое погружение в среду. Так я проглядел курсы PHP на одном дыхании, повторяя преподавателя, выполняя его задания и сверяя. После видеоуроков, когда стал свои правки в сайты, конечно, видео уже не открывал повторно, а сразу шёл на php.su, к примеру, и вникал как работает та или иная функции, разбирался более глубоко. С книгами у меня так быстро не получалось, не завлекала меня. А теперь, когда разобрался, не так уж и сложно кажется разбираться в мануалах Потому решил теперь так JS освоить, проглядеть видеоуроки, а затем засесть за мануалы. Думаете, это лишняя трата времени? Ну а вообще JS ради AJAX стал изучать, да и лишним 100% не будет, ведь на нем квери завязано и другие библиотеки, а также (если не ошибаюсь) на JS завязано написание андроид-приложений. Спасибо за советы по книжечке, сейчас поищу. И да, что-то не могу нормально мануала по JS найти (javascript.ru совершенно не нравится). styoplotr 1 Link to post Share on other sites
VIP styoplotr 514 Posted April 23, 2015 VIP Report Share Posted April 23, 2015 Не могу согласиться. Смотря как их смотреть. Благодаря этим видеоурокам я смог изучить основы PHP с лёгкостью, а вот по книгам так и не смог. Видеоуроки - это как быстрое погружение в среду. Я поэтому уточнил что с php вы знакомы и второй язык программирования дастся конечно легче, можно обойтись без видеоуроков, но как вам больше подуше. https://developer.mozilla.org/ru/docs/Web/JavaScript это руководство http://www.books.ru/books/javascript-podrobnoe-rukovodstvo-6-e-izdanie-1814274/ это книга Javascript самый популярный язык программирования в мире, на нем можно писать : фронтенд, бекенд, десктоп и мобильные приложения и с каждым днем становится все популярнее. campusboy 1 Link to post Share on other sites
desg 55 Posted April 23, 2015 Report Share Posted April 23, 2015 Чаще всего видео уроки обучают только нескольким навыкам, например: создание слайдеров, выпадающее меню и т.д. Но не дает полноценной работы для написания даже самых простых программ, таких как конвертер и прочих. Человек который не понял суть и логику работы скриптов, будет обучен только некоторым вещам. campusboy 1 Link to post Share on other sites
VIP campusboy 912 Posted April 23, 2015 Author VIP Report Share Posted April 23, 2015 Я поэтому уточнил что с php вы знакомы и второй язык программирования дастся конечно легче, можно обойтись без видеоуроков, но как вам больше подуше. https://developer.mozilla.org/ru/docs/Web/JavaScript это руководство http://www.books.ru/books/javascript-podrobnoe-rukovodstvo-6-e-izdanie-1814274/ это книга Javascript самый популярный язык программирования в мире, на нем можно писать : фронтенд, бекенд, десктоп и мобильные приложения и с каждым днем становится все популярнее. Спасибо отдельное за сайт, очень приятный и толковый, странно, что в поиске никогда его не выдаёт. Книжечка тоже внушительная. В общем-то, думаю, этого на первый порах более, чем достаточно. Чаще всего видео уроки обучают только нескольким навыкам, например: создание слайдеров, выпадающее меню и т.д. Но не дает полноценной работы для написания даже самых простых программ, таких как конвертер и прочих. Человек который не понял суть и логику работы скриптов, будет обучен только некоторым вещам. Вы отчасти правы, но не в моём случае. Однако, спасибо большое за мнение! styoplotr 1 Link to post Share on other sites
Man 21 Posted April 23, 2015 Report Share Posted April 23, 2015 а также (если не ошибаюсь) на JS завязано написание андроид-приложений. Ошибаетесь! Naruto 1 Link to post Share on other sites
zaws 91 Posted April 23, 2015 Report Share Posted April 23, 2015 Но всё равно, если не ввести имя, то выкидывает "Привет, null". Почему? потому что в js undefined, а не null Link to post Share on other sites
WQP 360 Posted April 23, 2015 Report Share Posted April 23, 2015 а также (если не ошибаюсь) на JS завязано написание андроид-приложений. Вы ошибаетесь. JAVA и JAVASCRIPT это далеко не одно и тоже. Если вы хотите в дальнейшем ударится в android разработку то учите JAVA, но также можно уйти на C/C++ campusboy 1 Link to post Share on other sites
VIP campusboy 912 Posted April 23, 2015 Author VIP Report Share Posted April 23, 2015 Вы ошибаетесь. JAVA и JAVASCRIPT это далеко не одно и тоже. Если вы хотите в дальнейшем ударится в android разработку то учите JAVA, но также можно уйти на C/C++ Спасибо большое за совет. Пока JAVASCRIPT поучу, он как-то ближе web, чаще требуется его знание в разработке у меня. Всё такое интересное, жаль жизнь коротка Link to post Share on other sites
WQP 360 Posted April 23, 2015 Report Share Posted April 23, 2015 Спасибо большое за совет. Пока JAVASCRIPT поучу, он как-то ближе web, чаще требуется его знание в разработке у меня. Всё такое интересное, жаль жизнь коротка Выучить новый язык программирования не так сложно, если был опыт с другим языком. Но выучить всё невозможно. Запомните, что даже создатель языка программирования не знает его полностью. campusboy 1 Link to post Share on other sites
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now