我有一個聊天應用程序,我想使用褻瀆過濾器。 http://jsfiddle.net/691nruoL/4/爲褻瀆過濾器優化代碼
var chatMessage = "sex it up what the fuck tits lol fuck titsss";
// Potentially an array of hundreds of words coming from a JSON file
var badWords = ['sex', 'fUck', 'dick', 'penis', 'cum', 'tits', 'fuck'];
for (var i = 0; i < badWords.length; i++) {
if (chatMessage.indexOf(badWords[i].toLowerCase()) !== -1) {
chatMessage = chatMessage.replace(badWords[i].toLowerCase(), pushAsterisksForWordLength(badWords[i].length));
}
}
function pushAsterisksForWordLength(asterisksLength) {
var censoredWordArray = [];
for (var i = 0; i < asterisksLength; i++) {
censoredWordArray.push('*');
}
return censoredWordArray.join('');
}
console.log(chatMessage);
那你怎麼優化它:
我已經來到了?我覺得陣容中有很多不好的話,可能會很慢。
使用正則表達式??????? – 2014-11-21 08:15:40
你將如何使用它? – 2014-11-21 08:16:46
你「感覺」它可能會很慢?你真的測過它了嗎? – JJJ 2014-11-21 08:18:45