ปัญหา
เราต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงที่ประกอบด้วยตัวเลข ฟังก์ชันควรคืนค่า true หากผลรวมของตัวเลขคู่มากกว่าผลรวมของตัวเลขคี่ false ถ้าไม่ใช่
ตัวอย่าง
โค้ดตัวอย่างด้านล่าง:
const num = '645457345';
const isEvenGreater = (str = '') => {
let evenSum = 0;
let oddSum = 0;
for (let i = 0; i < str.length; i++) {
const el = +str[i];
if (el % 2 === 0) {
evenSum += el;
} else {
oddSum += el;
}
}
return evenSum > oddSum;
};
console.log(isEvenGreater(num));
ผลลัพธ์
false
คำอธิบายเพิ่มเติม
โค้ดแปลงแต่ละตัวอักษรเป็นตัวเลขด้วย unary plus (+) แล้วตรวจสอบความคู่คี่ สามารถเขียนให้สั้นขึ้นได้ด้วย reduce และ filter