อัฒภาคใน JavaScript แสดงถึงจุดสิ้นสุดของคำสั่ง แต่เนื่องจาก JavaScript มีกฎการแทรกอัฒภาคอัตโนมัติ จึงเป็นเรื่องง่ายมากที่จะเบลอ ภายใต้สถานการณ์ปกติ การขึ้นบรรทัดใหม่จะสร้างอัฒภาค แต่สถานการณ์จริงไม่เป็นเช่นนั้น กล่าวคือ อัฒภาคอาจถูกสร้างขึ้นหรือไม่ก็ได้เมื่อมีการขึ้นบรรทัดใหม่ใน JavaScript การจะแทรกอัฒภาคโดยอัตโนมัติจะขึ้นอยู่กับบรรทัดบนและล่างเป็นหลัก ดังนั้นแม้แต่โปรแกรมเมอร์ที่มีประสบการณ์ก็บางครั้งก็ปวดหัว
นอกจากนี้ยังมีคำอธิบายที่เกี่ยวข้องสำหรับกฎการแทรกอัฒภาคอัตโนมัติใน ECMAScript : คำสั่งว่าง, คำสั่งตัวแปร, คำสั่งนิพจน์, คำสั่ง do- While, คำสั่ง Continue, คำสั่งแบ่ง, คำสั่ง Return และคำสั่ง Throw คำสั่ง ECMAScript เหล่านี้บางคำสั่งจะต้องถูกคั่นด้วย The หมายเลขสิ้นสุด อัฒภาคเหล่านี้สามารถปรากฏอย่างชัดเจนในข้อความซอร์สโค้ดเสมอ เพื่อความสะดวก ในบางกรณี อัฒภาคในข้อความซอร์สโค้ดอาจถูกละเว้น กล่าวอีกนัยหนึ่ง ไม่จำเป็นต้องป้อนเครื่องหมายอัฒภาคที่ส่วนท้ายของคำสั่งเหล่านี้ JavaScript จะแทรกไว้ที่ส่วนท้ายของคำสั่งโดยอัตโนมัติ
หากคุณต้องการทราบรายละเอียดกฎการแทรกอัฒภาคอัตโนมัติของ ECMAScript คุณสามารถดูลิงก์ต่อไปนี้:
การฝึกฝนทำให้เห็นความจริง ลองดูตัวอย่างต่อไปนี้ แล้วคุณจะเข้าใจว่าการแทรกอัฒภาคอัตโนมัตินั้นไม่ใช่เรื่องยาก ความประมาทเล็กน้อยอาจทำให้คุณปวดหัวได้
การฆาตกรรมที่เกิดจากการกลับมา
ต่อไปนี้เป็นเนื้อหาที่ยกมา: ทดสอบฟังก์ชัน(){ |
ฟังก์ชันที่ส่งกลับค่า a+b จะดูดีตั้งแต่แรกเห็น แต่ไม่ได้กำหนดผลลัพธ์ของการแจ้งเตือนที่ทำงานอยู่ ตามกฎการแทรกอัฒภาคอัตโนมัติ หากมีการขึ้นบรรทัดใหม่หลังคำสั่ง return อัฒภาคจะถูกแทรกโดยอัตโนมัติ และจะเข้าใจได้ง่ายขึ้นหากไม่มีค่าที่ส่งคืน หากคุณต้องการพันเส้น คุณสามารถทำได้ดังนี้:
ต่อไปนี้เป็นเนื้อหาที่ยกมา: ทดสอบฟังก์ชัน(){ (การทำงาน (){ |
เครื่องหมายอัฒภาคสองตัวในส่วนหัวของคำสั่ง for จะไม่ถูกแทรกโดยอัตโนมัติ
ต่อไปนี้เป็นเนื้อหาที่ยกมา: for( var a=1,b=10 // Semicolon จะไม่ถูกแทรกโดยอัตโนมัติ |
ECMAScript ยังมีคำอธิบายสำหรับสิ่งข้างต้น: การตีความอัฒภาคเป็นคำสั่งว่างและการไม่แทรกอัฒภาคใน () โดยอัตโนมัติสำหรับคำสั่งถือเป็นกรณีพิเศษและไม่ได้อยู่ภายใต้กฎการแทรกอัตโนมัติ
แม้ว่า JavaScript จะเป็นภาษาที่พิมพ์ไม่ชัดเจน แต่กฎการแทรกอัฒภาคอัตโนมัติของ ECMAScript นั้นยากที่จะเข้าใจอย่างละเอียด อย่างไรก็ตาม ด้วยการพัฒนานิสัยการเขียนโค้ดที่ดี การใส่เครื่องหมายอัฒภาคด้วยตนเอง และสร้างนิสัย คุณสามารถหลีกเลี่ยงปัญหาเหล่านี้ได้ ในเวลาเดียวกัน จะเป็นประโยชน์อย่างมากสำหรับตัวคุณเองและผู้อื่นในการดีบักโปรแกรมและการอ่านโค้ด
ในเวลาเดียวกัน ECMAScript ยังให้คำแนะนำแก่โปรแกรมเมอร์ด้วย:
++ หรือ — ควรปรากฏในบรรทัดเดียวกับตัวถูกดำเนินการ
นิพจน์ในคำสั่ง return หรือ Throw ควรปรากฏในบรรทัดเดียวกับ return หรือ Throw
ป้ายกำกับในคำสั่งแบ่งหรือดำเนินการต่อควรปรากฏในบรรทัดเดียวกับคำสั่งแบ่งหรือดำเนินการต่อ