Задать вопрос
Tishaa
@Tishaa

Как посчитать количество пересечений с помощью метода filter?

Вот есть код, выводит число 3 в консоль, суть в том, что код проверяет, сколько букв из переменной newWord находится в переменной glas. Как упростить код с помощью метода filter?

const newWord = 'JavaScript';

let glas = ['a','e','i','o','u']

function as(a,b){
    count = 0
    for(i=0;i< a.length; i++){
        for(j=0;j <b.length;j++){
            if(a[i] == b[j]){
                count++
            }
        }
    }
    return count;
}

console.log(as(newWord,glas))

as(newWord,glas)
  • Вопрос задан
  • 186 просмотров
Подписаться 1 Простой Комментировать
Решение пользователя Ivan Ustûžanin К ответам на вопрос (3)
IvanU7n
@IvanU7n
nothing interesting here
const as = (where, what) => what.filter(v => where.includes(v)).length;


не слишком «просто»? вопросов, что делает этот код, не будет?

ПЛЮС: код выводит количество букв из what, один только Array.filter() не даст количества вхождений в where букв из what

ПЛЮС2: то самое упрощение, дающее количество вхождений и где одним только Array.filter() не обойтись:
const as = (where, what) => where.split('').filter(v => what.includes(v)).length;
Ответ написан