Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.10.2013, 16:22
Новичок на форуме
Отправить личное сообщение для main.c Посмотреть профиль Найти все сообщения от main.c
 
Регистрация: 05.10.2013
Сообщений: 4

Непонятное поведение в Chrome
<script>	
    var name = prompt('Кто пришёл?', '');
    if (name == null) { 
        alert('Вход отменён');
    }
</script>

В хроме условный оператор не срабатывает, но в опере и мозиле срабатывает, а теперь самое интересное, при смене имени переменной на userName (в принципе на любое другое, отличное от name), скрипт в хроме уже работает:
<script>	
    var userName = prompt('Кто пришёл?', '');
    if (userName == null) { 
        alert('Вход отменён');
    }
</script>

С чем связано такое поведение, может в хроме это слово рарезервировано или проблема в чём-то другом?
Ответить с цитированием
  #2 (permalink)  
Старый 10.10.2013, 18:13
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от main.c
С чем связано такое поведение, может в хроме это слово рарезервировано или проблема в чём-то другом?
Вот что там "работает"...

var name = prompt('Кто пришёл?', '');
    if (name == 'null') { 
        alert('Вход отменён');
    };
Ответить с цитированием
  #3 (permalink)  
Старый 10.10.2013, 18:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072


var name = prompt('Кто пришёл?', '');
    if (!name) {
        alert('Вход отменён');
    };
Ответить с цитированием
  #4 (permalink)  
Старый 10.10.2013, 18:52
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от main.c
отличное от name
потому что name это зарезервированное слово в пространстве window
alert(typeof name); // 'string' а не 'undefined'

тогда как:
alert(typeof userName); // 'undefined'
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ng-repeat кастомный фильтр для фильтрации обьектов (непонятное поведение) VerDiz Angular.js 10 04.08.2013 15:42
Непонятное поведение бордеров antserg (X)HTML/CSS 14 14.06.2013 09:10
Непонятное поведение плагина flexcroll maximale AJAX и COMET 11 31.05.2012 20:29
непонятное поведение bpystep Общие вопросы Javascript 7 01.05.2012 21:42
Непонятное поведение полосы прокрутки в контейнере mouse_web Элементы интерфейса 10 27.09.2010 12:33