Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.08.2012, 16:06
Аватар для z700i
Аспирант
Отправить личное сообщение для z700i Посмотреть профиль Найти все сообщения от z700i
 
Регистрация: 15.10.2010
Сообщений: 77

Проблема с условным оператором if
a = '#id';
b = '.class';
c = 'tag';
function f1(variable){
    (/#/.test(variable))?alert('id'):(/./.test(variable))?alert('class'):alert('tag');
}
function f2(variable){
    if(/#/.test(variable))
        alert('id');
    else if(/./.test(variable))
        alert('class');
    else alert('tag');
}
f1(a); /*Должен выдавать 'id', так как содержит '#'*/
f1(b); /*Должен выдавать 'class', так как содержит '.'*/
f1(c); /*Должен выдавать 'tag', так как не содержит ни первого ни второго*/
f2(a); /*Должен выдавать 'id', так как содержит '#'*/
f2(b); /*Должен выдавать 'class', так как содержит '.'*/
f2(c); /*Должен выдавать 'tag', так как не содержит ни первого ни второго*/

почему в случае с переменной 'c' не содержащей ни '#' ни '.' всё рано выдаёт "class"?
Ответить с цитированием
  #2 (permalink)  
Старый 09.08.2012, 16:17
Профессор
Отправить личное сообщение для oneguy Посмотреть профиль Найти все сообщения от oneguy
 
Регистрация: 31.05.2012
Сообщений: 396

Символ точка в регулярке является специальным, и если нужно найти именно точку, его нужно экранировать: /\./
Ответить с цитированием
  #3 (permalink)  
Старый 09.08.2012, 16:19
Аспирант
Отправить личное сообщение для mullih Посмотреть профиль Найти все сообщения от mullih
 
Регистрация: 05.08.2012
Сообщений: 77

потому что точка это любой символ в регекспе вот тк первое условие не выполняется выполняется второе
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с обработкой ескольких .hover() anocean jQuery 3 15.06.2012 22:43
Проблема с Popup окном vovuslik jQuery 5 12.06.2010 16:12
Проблема с дизайном после отправки xmlhttprequest, Проблема с дизайном после отправки cyberx AJAX и COMET 3 01.05.2010 17:07
Проблема с CSS COKOJIOB (X)HTML/CSS 5 04.08.2009 14:19
Проблема, в менюшке Большой джо Элементы интерфейса 0 12.07.2009 17:12