เราต้องเขียนฟังก์ชันที่รับอาร์เรย์ตัวเลขและคืนอาร์เรย์ใหม่ที่มีเฉพาะตัวเลขที่มีจำนวนหลักเป็นเลขคู่
ตัวอย่าง: [34, 23, 112, 8, 3456, 345] → [34, 23, 3456] (34 มี 2 หลัก, 23 มี 2 หลัก, 3456 มี 4 หลัก)
ตัวอย่างโค้ด
const arr = [34, 23, 112, 8, 3456, 345];
const countDigits = (num, sum = 0) => {
if (num) { return countDigits(Math.floor(num / 10), sum + 1); }
return sum;
};
const isEven = num => num % 2 === 0;
const returnEvens = (arr = []) => {
const res = arr.filter(el => isEven(countDigits(el)));
return res;
};
console.log(returnEvens(arr));
ผลลัพธ์
ค่าที่แสดงในคอนโซลจะเป็นดังนี้:
[34, 23, 3456]