ใน JavaScript สามารถเข้าถึงตัวแปรทั่วไป (Global Variable) ได้แบบไดนามิกโดยใช้ชื่อตัวแปรในรูปแบบสตริงผ่านออบเจ็กต์ window ซึ่งเป็นออบเจ็กต์ระดับบนสุดในเบราว์เซอร์
ไวยากรณ์
window['ชื่อตัวแปร']
ตัวอย่างการใช้งาน
<!DOCTYPE html>
<html lang="th">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>เข้าถึงตัวแปรทั่วไปแบบไดนามิก</title>
</head>
<body>
<script>
var globalVariablelocal_print100 = 100;
var print100 = 1;
// รวมชื่อตัวแปรจากสตริงและตัวแปร
alert(window['globalVariable' + 'local_' + print100]); // แสดงผล 100
</script>
</body>
</html>
วิธีทดสอบ
บันทึกไฟล์ชื่อ anyName.html (หรือ index.html) แล้วคลิกขวาที่ไฟล์ เลือก "Open with Live Server" ใน VS Code Editor
ผลลัพธ์
กล่องโต้ตอบ (Alert) จะแสดงค่า 100 ซึ่งเป็นค่าของตัวแปร globalVariablelocal_print100