0Pricing
JavaScript Academy · บทเรียน

let, const และการหลีกเลี่ยง var

พื้นฐาน let และ const เหตุผลที่ควรหลีกเลี่ยง var ขอบเขตบล็อก และแนะนำเขตตายชั่วคราว (TDZ) อย่างค่อยเป็นค่อยไป

let, const และการหลีกเลี่ยง var เป็นบทเรียน JavaScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน JavaScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส JavaScript Academy มีบทเรียนทั้งหมด 3 บทเรียน

บทนำ

เป้าหมาย: ใช้การประกาศตัวแปรแบบเปลี่ยนค่าได้และแบบค่าคงที่อย่างมั่นใจ หลีกเลี่ยงการประกาศแบบเก่า และเข้าใจขอบเขตบล็อกกับ TDZ

  • แบบเปลี่ยนค่าได้เทียบกับแบบค่าคงที่
  • ขอบเขตบล็อก
  • ความปลอดภัยของ TDZ
let, const และการหลีกเลี่ยง var — ภาพประกอบ 1

พื้นฐานการประกาศแบบเปลี่ยนค่าได้เทียบกับแบบค่าคงที่

กฎ: ใช้การประกาศแบบค่าคงที่ เว้นแต่คุณวางแผนจะกำหนดค่าใหม่ มิฉะนั้นให้เลือกการประกาศแบบเปลี่ยนค่าได้

// Prefer const by default; use let when you need to reassign
const appName = "CoddyKit";   
// cannot reassign
let score = 0;                
// can reassign

score = score + 1;
console.log("App:", appName);
console.log("Score:", score);
let, const และการหลีกเลี่ยง var — ภาพประกอบ 2

เหตุผลที่ควรหลีกเลี่ยงการประกาศแบบเก่า

ควรหลีกเลี่ยงการประกาศแบบเก่าเนื่องจาก:

  • มีขอบเขตระดับฟังก์ชัน ไม่ใช่ระดับบล็อก
  • ถูกยกขึ้นก่อนการทำงาน และอาจอ่านได้เป็นค่าไม่ได้กำหนดก่อนการประกาศ
  • ทำให้การปรับโครงสร้างโค้ดยากขึ้นและคาดเดาได้น้อยลง
let, const และการหลีกเลี่ยง var — ภาพประกอบ 3

ตัวอย่างขอบเขตบล็อก

ขอบเขตบล็อกช่วยจำกัดตัวแปรให้อยู่ในบริเวณที่กำหนดและทำให้โค้ดเป็นระเบียบ

// Block scope: variables exist only inside the braces
let lives = 3;

if (true) {
  const bonus = 10;      
 // only inside this block
  let level = 2;          
// only inside this block
  console.log("Inside:", bonus, level);
}

console.log("Lives:", lives);
// The following would be ReferenceError if uncommented:
// console.log(bonus, level);
let, const และการหลีกเลี่ยง var — ภาพประกอบ 4

TDZ (ตัวอย่างที่ปลอดภัย)

TDZ: ตัวแปรที่ประกาศแบบเปลี่ยนค่าได้หรือแบบค่าคงที่ไม่สามารถอ่านได้ before บรรทัดที่ประกาศ การทำเช่นนี้ช่วยป้องกันข้อผิดพลาดจำนวนมาก

// TDZ: accessing let/const before declaration throws ReferenceError
try {
  // Uncommenting next line would throw:
  // console.log(theme);   
  // ReferenceError (TDZ)
  let theme = "dark";
  console.log("Theme after declare:", theme);
} catch (e) {
  console.log("Caught:", e.message);
}
let, const และการหลีกเลี่ยง var — ภาพประกอบ 5

การตั้งชื่อและคำแนะนำ

การตั้งชื่อ:

  • ใช้คำนามที่ชัดเจนสำหรับข้อมูล (userName, score)
  • ใช้คำกริยาสำหรับฟังก์ชัน (computeTotal)
  • จำกัดขอบเขตให้แคบ และประกาศใกล้จุดใช้งาน
let, const และการหลีกเลี่ยง var — ภาพประกอบ 6

แบบทดสอบการประกาศแบบเปลี่ยนค่าได้เทียบกับแบบค่าคงที่

ตรวจสอบอย่างรวดเร็ว: ขอบเขตบล็อกและการกำหนดค่าใหม่

let, const และการหลีกเลี่ยง var — ภาพประกอบ 7

สรุปทบทวน

สรุปทบทวน: ควรใช้การประกาศแบบค่าคงที่ ใช้การประกาศแบบเปลี่ยนค่าได้เมื่อต้องกำหนดค่าใหม่ และหลีกเลี่ยงการประกาศแบบเก่า ขอบเขตบล็อกช่วยจำกัดตัวแปรให้อยู่ในบริเวณที่กำหนด ส่วน TDZ ช่วยป้องกันข้อผิดพลาดจากการเข้าถึงก่อนเวลา

let, const และการหลีกเลี่ยง var — ภาพประกอบ 8

คำถามที่พบบ่อย

บทเรียน “let, const และการหลีกเลี่ยง var” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “let, const และการหลีกเลี่ยง var” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส JavaScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส JavaScript Academy มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “let, const และการหลีกเลี่ยง var”

พื้นฐาน let และ const เหตุผลที่ควรหลีกเลี่ยง var ขอบเขตบล็อก และแนะนำเขตตายชั่วคราว (TDZ) อย่างค่อยเป็นค่อยไป คุณปฏิบัติ JavaScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน JavaScript Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน JavaScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน

บทเรียน “let, const และการหลีกเลี่ยง var” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน JavaScript Academy นี้ได้ไหม

ได้ บทเรียน JavaScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. let, const และการหลีกเลี่ยง var
  2. ขอบเขตบล็อก ฟังก์ชัน โมดูล และ TDZ
  3. การตั้งชื่อ ความอ่านง่าย และข้อผิดพลาดที่พบบ่อย
← กลับไปที่ JavaScript Academy