如何檢查字符串是否包含數組的任何元素?如果元素有一些字符串,我想過濾一些數組。請參閱下面的代碼。檢查一個字符串是否包含JavaScript中數組的任何元素
var arr = ['banana', 'monkey banana', 'apple', 'kiwi', 'orange'];
function checker(value) {
var prohibited = ['banana', 'apple'];
for (var i = 0; i < prohibited.length; i++) {
if (value.indexOf(prohibited[i]) == -1) {
return true;
} else {
return false;
}
}
}
arr = arr.filter(checker);
console.log(arr);
結果是[ 'apple', 'kiwi', 'orange' ]
。 'apple'
應該被刪除,但不是。
上面的代碼只是過濾'香蕉',而不是'蘋果'。我有很多關鍵字要過濾。有更容易的方法嗎?
我沒有看到jQuery在任何問題中提到的任何地方由OP,還有一些解釋「你的代碼如何工作」將有所幫助。 –
沒有提到JQuery,但提問者要求定義一些更簡單的方法,以便他能夠輕鬆理解。代碼運行良好,因爲我已經測試過它。 **每個**功能類似於** foreach **,所以嵌套每個都可以解決問題 –
當然,這將工作,毫無疑問,但我們不應該提供JavaScript問題的jQuery答案。 –