ลูปซ้อนและขอบเขตการมองเห็นใน JavaScript
ถ้าเรามีลูปภายในลูป ตัวแปร
ที่ประกาศในลูปภายนอกจะสามารถเข้าถึงได้
ในลูปภายใน ในตัวอย่างต่อไปนี้ ตัวแปร
num สามารถเข้าถึงได้ในลูปภายใน:
for (let i = 0; i <= 9; i++) {
let num = 3;
for (let j = 0; j <= 9; j++) {
console.log(num); // แสดงผล 3
}
}
แต่ถ้าอยู่นอกลูปภายนอก ตัวแปร num
จะไม่สามารถเข้าถึงได้:
for (let i = 0; i <= 9; i++) {
let num = 3;
for (let j = 0; j <= 9; j++) {
}
}
console.log(num); // จะเกิดข้อผิดพลาด
ตัวแปรที่ประกาศในลูปภายใน ไม่สามารถเข้าถึงได้จากภายนอก:
for (let i = 0; i <= 9; i++) {
for (let j = 0; j <= 9; j++) {
let num = 3;
}
console.log(num); // จะเกิดข้อผิดพลาด
}
console.log(num); // จะเกิดข้อผิดพลาด