Помогите с функцией
Доброго времени суток! Суть задачи: Напишите функцию 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, время: 17:28. |