Chome 18.0.1025.142 Prompt() возвращает NULL как строку
Здравствуйте, подскажите что делать хром возвращяет NULL как строку:
вот банальный пример: var name; do { name = prompt ("номер телефона",""); } while (!name) NULL хром возвращает как строку т.е. "null", можно усложнить условие цикла, но вопрос в другом как этого избежать. |
!name предполагает, что будет введена строка с ненулевой длиной.
" " (3 пробела) тоже считается как за строку. |
!name предполагает, что будет введена строка с ненулевой длиной.
спасибо, Америку открыли. И достаточно пробела, чтобы строка явл. не пустой и выполнялся выход из цикла. Вопрос стоял иначе, почему ХРоМ возвращает тривиальный тип данный null как строку? И как этого избежать/ или исправить? |
у меня Хром 18.0.1025.151 null возвращает при отмене а не строку
|
Павел, проверьте пожалуйста через typeof;
у меня возвращает string... Хром 18.0.1025.151 Буду благодарен вам вот: http://jsfiddle.net/Hnwf7/ походу только фаерФокс меня понимает и возвращает object :( up: и опера. хром и ишак гребаные танкисты |
Да, есть фэйл.
|
Нельзя использовать переменную name
Она уже есть в глобальной области видимости до Вас. И Chrome принудительно приводит ее к строке, чтобы вы туда не пытались положить. |
Цитата:
если просто typeof prompt(...) - object |
мля.. пасиба. А я уже пару раз так натыкался. Надо запомнить будет все занятые переменные :)
|
Цитата:
Гораздо лучшим является подход - не создавать без необходимости глобальные переменные. В локальной области видимости вы сам себе хозяин, и вполне можете создавать переменную name |
Часовой пояс GMT +3, время: 04:26. |