Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

Sum ตัวเลขลบ (รวมหลักบวกและลบ) ใน JavaScript

โจทย์

หาผลรวมหลักของเลขลบ โดยหลักแรกถือเป็นลบ

ตัวอย่าง:
-234 → -2 + 3 + 4 = 5
-54 → -5 + 4 = -1

ตัวอย่างโค้ด

const num = -4345; 
const sumNum = num => { 
  return String(num).split("").reduce((acc, val, ind) => { 
    if(ind === 0){ return acc; } // ข้าม minus sign 
    if(ind === 1){ acc -= +val; return acc; } // หลักแรกเป็นลบ 
    acc += +val; 
    return acc; 
  }, 0); 
}; 
console.log(sumNum(num));

ผลลัพธ์

8

คำอธิบาย

String(-4345) → "-4345" split → ["-", "4", "3", "4", "5"]
index 0: "-" → skip
index 1: "4" → acc -= 4 (หลักแรกเป็นลบ)
index 2,3,4: "3","4","5" → acc += 3, +=4, +=5
ผล: -4 + 3 + 4 + 5 = 8