Точнее целое слово так:
function checkForSpam(string) {
return new RegExp('\\bspam\\b|\\bsale\\b', 'i').test(string);
}
console.log(checkForSpam('sPaM'), checkForSpam('sPaMmer'));
Функцию исправить так, но всё равно она не найдет такую конструкцию "[SPAM]"
function checkForSpam(str) {
var arr = str.toLowerCase().split(' ');
for (var i = 0; i < arr.length; i++) {
var word = arr[i];
if (word == 'spam' || word == 'sale') {
return true;
}
}
return false;
}