// Дан массив числами, например: [10, 20, 30, 50, 235, 3000]. // Выведите на экран только те числа из массива, которые начинаются на цифру 1, 2 или 5. Мое решение:
for (i in arr) {
let chr = Math.abs(arr[i]).toString()[0];
if (chr === '1' || chr === '2' || chr === '5') { console.log(arr[i]); }
};
Вопрос: Есть ли возможность решить задание с помощью методов перебора массива forEach или filter?
filter:
const chrs = ['1', '2', '5'],
result = [10, 20, 30, 50, 235, 3000].filter(e => chrs.includes(e.toString()[0]))
console.log(result)
forEach:
const chrs = ['1', '2', '5'],
arr = [10, 20, 30, 50, 235, 3000]
let result = []
arr.forEach(e => chrs.includes(e.toString()[0]) ? result.push(e) : undefined)
console.log(result)
reduce:
const chrs = ['1', '2', '5'],
result = [10, 20, 30, 50, 235, 3000].reduce((a, v) => {
chrs.includes(v.toString()[0]) ? a.push(v) : undefined
return a
}, [])
console.log(result)
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости