首页 > 解决方案 > 过滤一个字符串中的单词

问题描述

伙计们。我对 JavaScript 很陌生,只是想问一下如何从字符串 1 中过滤字符串 2 的单词。

string1 = ['mango', 'iPhone', 'banana', 'computer', 'apple', 'keyboard', 'strawberry'];
string2 = ['mango', 'banana', 'apple', 'strawberry'];


const string3 = string1.filter(if (word) {})

到目前为止,我就是这样出现的。我不太确定在 filter() 方法中写什么。(1)我想说如果字符串 1 单词与字符串 2 单词匹配,(2)然后我想排除它们(3)并且我想将它们的其余部分存储在字符串 3 中。

还有其他方法可以达到同样的效果,这也是值得赞赏的。

标签: javascriptif-statementfilter

解决方案


你可以像这样使用过滤器

const result = string1.filter(word => !string2.includes(word));

如果您想从 arr1 中删除 arr2 和 arr3 的元素,那么我的方法是

array1 = ['mango', 'iPhone', 'banana', 'computer', 'apple', 'keyboard', 'strawberry'];
array2 = ['mango', 'banana', 'apple', 'strawberry'];
array3 = ['1', '2', '3', 'iPhone']

result = array1.filter(word => !(array2.includes(word) || array3.includes(word)));

console.log(result);   // ["computer", "keyboard"]

推荐阅读