Как метод filter работает с includes в этом коде?

Дан массив числами, например: [10, 20, 30, 50, 235, 3000]. Выведите на экран только те числа из массива, которые начинаются на цифру 1, 2 или 5.

Нашел такое решение

let arr = [10, 20, 30, 50, 235, 3000];
 
console.log(arr.filter(num => ['1','2','5'].includes(num.toString()[0])))

Никак не могу до конца понять, как работает этот код. Для чего нужно num.toString() и можно ли сделать с помощью startWith или же этот метод работает только со строкой?


Ответы (1 шт):

Автор решения: Grundy

Для каждого num из массива arr

  1. число переводится в строку num.toString()
  2. берется его первая цифра [0]
  3. проверяется наличие этой цифры в массиве ['1','2','5']
  4. если includes возвращает true - число отправляет в итоговый массив
→ Ссылка