Как отфильтровать массив по словам в другом массиве? - PullRequest
0 голосов
/ 10 октября 2018

Я хочу отфильтровать некоторые слова, содержащиеся в массиве, содержащемся в строке.Например:

Входы

1.«исчезают» определения:

[ "Cease to be visible.",
  "Cease to exist or be in use.",
  "Be lost or go missing, become IMPOSSIBLE to find.",
  "Abduct or arrest and kill or detain (a person) for political reasons,
  without making their fate known." ]

2.запрещенные слова:

[ 'without', 'impossible' ]

Результат

[ "Cease to be visible.", "Cease to exist or be in use." ]

Я думаю, я очень близок к ответу:

function filterDefinition (defs, badWords) {
  const definitionFilter = defs.filter(function(def) {
    if (def.includes(badWords || badWords.toUpperCase()) {
      return !defs
    }
  });
  return definitionFilter;
}

1 Ответ

0 голосов
/ 10 октября 2018

Как это?

function filterDefinition (defs, badWords) {
  return defs.filter(function(def) {
    return !badWords.some(badWord => def.includes(badWord) || def.includes(badWord.toUpperCase()));
  });
}

String.include (строка) не работает с массивами.

...