Strict Mode เป็นฟีเจอร์ที่นำมารวมใน ES5 ซึ่งช่วยให้คุณวางโปรแกรมหรือฟังก์ชันในโหมด "เข้มงวด" ได้
บริบทแบบเข้มงวดนี้จะป้องกันการกระทำบางอย่างและโยนข้อยกเว้นมากขึ้น (โดยทั่วไปจะให้ข้อมูลมากขึ้นแก่ผู้ใช้) คุณสมบัติเฉพาะของ Strict Mode ได้แก่
ตัวแปรที่ไม่ได้ประกาศแต่กำหนดค่าโดยตรงจะล้มเหลว การพยายามกำหนด
foo = "bar"โดยที่ 'foo' ยังไม่ได้ถูกกำหนดจะล้มเหลวไม่สามารถใช้
evalใน strict mode ได้ไม่สามารถกำหนดค่า array arguments ใหม่ภายในฟังก์ชันได้
ไม่อนุญาตให้ใช้คำสั่ง
with
คุณสามารถใช้สคริปต์ใน strict mode ได้ดังนี้
เพิ่มโค้ดต่อไปนี้ที่ด้านบนของสคริปต์เพื่อเปิดใช้งานสำหรับสคริปต์ทั้งหมด
"use strict";
หากต้องการใช้งานเฉพาะในฟังก์ชัน ให้เพิ่มไว้ในบริบทของฟังก์ชันนั้นๆ
function strictFunc() { "use strict"; // ส่วนที่เหลือของฟังก์ชัน }