文字过滤javascript

文字过滤javascript,javascript,function,Javascript,Function,我通常对我该怎么做感到很困惑。(请注意,我对Javascript非常陌生)。我正在尝试创建一个单词过滤功能,如果检测到一个单词,它将在控制台中打印一些内容。如果没有,那么它会打印出没有发现任何我正在过滤的坏话 var badWords = ["legos", "cloud", "manifold"] var linija = 'ja volim legos' function badWordChecker() { if (linij

我通常对我该怎么做感到很困惑。(请注意,我对Javascript非常陌生)。我正在尝试创建一个单词过滤功能,如果检测到一个单词,它将在控制台中打印一些内容。如果没有,那么它会打印出没有发现任何我正在过滤的坏话

var badWords  = ["legos", "cloud", "manifold"]
var linija = 'ja volim legos'

function badWordChecker() {
if (linija = arr.filter(el => badWords.includes(el)) )

console.log('Dirty')
else{
console.log('Clean')
 }
}


您可以将其拆分为空格,并检查是否有任何单词匹配:

const badWords=新设置([“乐高”、“云”、“流形”);
函数hasBadWords(str){
if(str.split(“”).some(word=>badWords.has(word))){
返回“脏”;
}否则{
返回“干净”;
}
}
console.log(hasBadWords(“javolimlegos”);//日志“脏”
console.log(hasBadWords(“foobarbaz”);//日志“干净”

您可以在空格上拆分它,并检查是否有任何单词匹配:

const badWords=新设置([“乐高”、“云”、“流形”);
函数hasBadWords(str){
if(str.split(“”).some(word=>badWords.has(word))){
返回“脏”;
}否则{
返回“干净”;
}
}
console.log(hasBadWords(“javolimlegos”);//日志“脏”
console.log(hasBadWords(“foobarbaz”);//日志“干净”

你需要把你的<代码> LIJA分成单独的单词。你需要把你的<代码> LIJA分成单独的单词。请考虑使用<代码>分割(/\W++G)< /代码>,而不是使用<代码>分割(“”)< /代码>对不起,你能解释一下如何吗?一些(Word=> Bordword,(Word))工作吗?我在理解和实现代码时遇到问题。
。如果数组中至少有一个元素与该函数匹配,则某些
接受函数并返回
true
badWords
是一个集合,因此
.has(word)
检查该单词是否在坏单词集合中。基本上,它读起来像英语:如果一组坏单词中有某个单词,那么它就是脏的。是的,但我的问题是,一旦我抛出你在VSC中发送的代码,我就会得到一个坏单词。has不是一个函数吗?这有点像我的问题,我尝试查找.includes,因为我认为您应该是.has而不是.has?注意数组周围的
new Set()
。如果你不这样做,你就必须使用<代码>。包括,这是一个数组方法,但是比集合方法慢得多。请考虑使用<代码>拆分(/\W++G)< /代码>,而不是使用<代码>拆分(“”)< /代码>对不起,你能解释一下如何吗?一些(Word=> Bordword,(Word))工作吗?我在理解和实现代码时遇到问题。
。如果数组中至少有一个元素与该函数匹配,则某些
接受函数并返回
true
badWords
是一个集合,因此
.has(word)
检查该单词是否在坏单词集合中。基本上,它读起来像英语:如果一组坏单词中有某个单词,那么它就是脏的。是的,但我的问题是,一旦我抛出你在VSC中发送的代码,我就会得到一个坏单词。has不是一个函数吗?这有点像我的问题,我尝试查找.includes,因为我认为您应该是.has而不是.has?注意数组周围的
new Set()
。如果不这样做,则必须使用
.includes
,这是一种数组方法,但比set方法慢得多。