Помогите с функцией
Доброго времени суток! Суть задачи: Напишите функцию 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. В чем у меня ошибка? Заранее спасибо! |
var upperText="ПриВет"
document.write(upperText.toUpperCase()) // ПРИВЕТ viagra = VIAGRA |
Victor031,
<script> function checkSpam(str) { return /viagra|XXX/i.test(str) } document.write([checkSpam('ff'),checkSpam('VIAGRA')]); </script> |
Цитата:
|
Цитата:
|
Victor031,
Цитата:
Цитата:
<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> |
Исправил вот так, но всё равно не правильно работает
function checkSpam(str) { str = str.toUpperCase(); if((str.indexOf('VIAGRA')) || (str.indexOf('XXX'))) return true; else return false; } document.write(checkSpam('ffg')); |
Цитата:
то есть -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')); |
Часовой пояс GMT +3, время: 05:47. |