Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.02.2015, 20:44
Аватар для Victor031
Интересующийся
Отправить личное сообщение для Victor031 Посмотреть профиль Найти все сообщения от Victor031
 
Регистрация: 30.12.2014
Сообщений: 15

Помогите с функцией
Доброго времени суток! Суть задачи: Напишите функцию checkSpam(str), которая возвращает true, если строка str содержит ‘viagra’ or ‘XXX’.

Функция должна быть нечувствительна к регистру


Вот что у меня получилось:
function checkSpam(str) {
  str = str.toUpperCase();
  if(str.indexOf('viagra')|| str.indexOf('XXX')) return true;
  else return fasle;
  
}

document.write(checkSpam('ff'));


Всегда возвращает true.

В чем у меня ошибка? Заранее спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 21.02.2015, 21:05
Профессор
Отправить личное сообщение для caetus Посмотреть профиль Найти все сообщения от caetus
 
Регистрация: 23.09.2014
Сообщений: 197

var upperText="ПриВет"
document.write(upperText.toUpperCase()) // ПРИВЕТ

viagra = VIAGRA
Ответить с цитированием
  #3 (permalink)  
Старый 21.02.2015, 21:19
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Victor031,
<script>
function checkSpam(str) {
 return /viagra|XXX/i.test(str)
}
document.write([checkSpam('ff'),checkSpam('VIAGRA')]);

    </script>
Ответить с цитированием
  #4 (permalink)  
Старый 21.02.2015, 21:40
Аватар для Victor031
Интересующийся
Отправить личное сообщение для Victor031 Посмотреть профиль Найти все сообщения от Victor031
 
Регистрация: 30.12.2014
Сообщений: 15

Сообщение от caetus Посмотреть сообщение
var upperText="ПриВет"
document.write(upperText.toUpperCase()) // ПРИВЕТ

viagra = VIAGRA
если честно не совсем понял, точнее ничего не понял.объясните поподробнее пожалуйста
Ответить с цитированием
  #5 (permalink)  
Старый 21.02.2015, 21:41
Аватар для Victor031
Интересующийся
Отправить личное сообщение для Victor031 Посмотреть профиль Найти все сообщения от Victor031
 
Регистрация: 30.12.2014
Сообщений: 15

Сообщение от рони Посмотреть сообщение
Victor031,
<script>
function checkSpam(str) {
 return /viagra|XXX/i.test(str)
}
document.write([checkSpam('ff'),checkSpam('VIAGRA')]);

    </script>
Вы могли бы подправить именно мой код?
Ответить с цитированием
  #6 (permalink)  
Старый 21.02.2015, 22:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Victor031,

Сообщение от Victor031
str.indexOf('viagra')
большими буквами
Сообщение от Victor031
return fasle;
<script>
function checkSpam(str) {
  str = str.toUpperCase();
  if(str.indexOf('VIAGRA')!= -1 ||  str.indexOf('XXX')!= -1) return true;
  else return false;

}
document.write([checkSpam('ff'),checkSpam('VIaGrA'),checkSpam('xxx')]);
    </script>
Ответить с цитированием
  #7 (permalink)  
Старый 21.02.2015, 23:03
Аватар для Victor031
Интересующийся
Отправить личное сообщение для Victor031 Посмотреть профиль Найти все сообщения от Victor031
 
Регистрация: 30.12.2014
Сообщений: 15

Исправил вот так, но всё равно не правильно работает
function checkSpam(str) {
  str = str.toUpperCase();
  if((str.indexOf('VIAGRA')) || (str.indexOf('XXX'))) return true;
  else return false;
  
}

document.write(checkSpam('ffg'));
Ответить с цитированием
  #8 (permalink)  
Старый 21.02.2015, 23:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Сообщение от Victor031
Исправил вот так, но всё равно не правильно работает

то есть -1 вас неустраивает
Ответить с цитированием
  #9 (permalink)  
Старый 21.02.2015, 23:33
Аватар для Victor031
Интересующийся
Отправить личное сообщение для Victor031 Посмотреть профиль Найти все сообщения от Victor031
 
Регистрация: 30.12.2014
Сообщений: 15

Сообщение от рони Посмотреть сообщение

то есть -1 вас неустраивает

Даа! точно! ведь возвращается не 0, а -1...теперь понял, спасибо! Переделал код, теперь работает:
function checkSpam(str) {
  str = str.toUpperCase();
  if((str.indexOf('VIAGRA')!=-1) || (str.indexOf('XXX')!=-1)) return true;
  else {return false;}
  
}

document.write(checkSpam('ff'));
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с функцией error ajax Evhen AJAX и COMET 2 13.12.2013 11:17
style.display помогите с функцией alma95 Javascript под браузер 6 07.08.2012 19:09
Помогите с Функцией lublupospat AJAX и COMET 4 18.03.2012 19:42
Помогите с функцией mayba Элементы интерфейса 7 16.05.2011 14:26
Помогите с функцией, таймер enterwap Элементы интерфейса 6 07.05.2009 23:40