การเข้าถึงตัวเลขแต่ละหลักใน JavaScript
สมมติตอนนี้ในตัวแปรของเราเก็บ
ไม่ใช่ตัวเลขในเครื่องหมายคำพูด แต่เป็นแค่ตัวเลขธรรมดา ในกรณีนี้
การพยายามเข้าถึงตัวอักษรแต่ละตัว
ของมันจะให้ค่า undefined เนื่องจาก
การเข้าถึงแบบนี้ทำงานได้เฉพาะกับสตริงเท่านั้น:
let test = 12345;
alert(test[0]); // จะให้ค่า undefined
เพื่อแก้ปัญหา เรามาแปลงตัวเลขของเรา เป็นสตริง:
let test = String(12345); // สตริง
alert(test[0]); // จะแสดง '1' - ทำงานได้ทั้งหมด
สมมติว่าตอนนี้เราต้องการหาผลรวมของ สองหลักแรก:
let test = String(12345); // สตริง
alert(test[0] + test[1]); // จะแสดง '12' - บวกกันเป็นสตริง
มาเพิ่มฟังก์ชัน Number เพื่อที่
ตัวอักษรจะได้บวกกันเป็นตัวเลข:
let test = String(12345); // สตริง
alert(Number(test[0]) + Number(test[1])); // จะแสดง 3
ขอเตือนว่า ปัญหาแบบนี้จะเกิดขึ้น เฉพาะเมื่อบวกกันเท่านั้น เช่น เมื่อคูณกัน การแปลงเป็นตัวเลขอาจไม่จำเป็นต้องทำ:
let test = String(12345); // สตริง
alert(test[1] * test[2]); // จะแสดง 6
กำหนดให้ตัวเลข 12345 จงหาผลรวมของตัวเลข
ของตัวเลขนี้
กำหนดให้ตัวเลข 12345 จงหาผลคูณ
ของตัวเลขนี้
กำหนดให้ตัวเลข 12345 จงสลับตัวเลข
ของตัวเลขนี้ในลำดับย้อนกลับ