คำอธิบาย
เขียนฟังก์ชันที่บวกเลขหลักของตัวเลขซ้ำๆ โดยไม่แปลงเป็นสตริง จนกว่าจะได้ตัวเลขหลักเดียว
ตัวอย่างโค้ด
const num = 546767643;
const sumDigit = (num, sum = 0) => {
if (num) {
return sumDigit(Math.floor(num / 10), sum + (num % 10));
}
return sum;
};
const sumRepeatedly = num => {
while (num > 9) {
num = sumDigit(num);
}
return num;
};
console.log(sumRepeatedly(num));
ผลลัพธ์
3