Как проверить, содержит ли строка текст из массива подстрок в NodeJS, а затем найти индекс этой подстроки в массиве? - PullRequest
2 голосов
/ 17 апреля 2020

Я могу определить первую часть вопроса, которая должна возвращать true, если строка содержит текст из массива подстрок в NodeJS, используя это:

var allowedRoles = [
    "Area Director",
    "Managing Director",
    "Group Director"];

var currentRole = "USA Managing Director";
var lifeSaver = allowedRoles.some((substring) =>
    currentRole.includes(substring)
);
console.log(lifeSaver);

Здесь мой результат верен , Но я хочу знать, что где в массиве allowRole мой результат вернул true. (Ожидаемый ответ: 1);

1 Ответ

2 голосов
/ 17 апреля 2020

Вместо использования .some вы можете использовать .findIndex

Метод findIndex () возвращает индекс первого элемента в массив, который удовлетворяет предоставленной функции тестирования. В противном случае возвращается -1, указывая, что ни один элемент не прошел тест.

var lifeSaver = allowedRoles.findIndex((substring) =>    
    currentRole.includes(substring)
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...