(ที่มาจากที่นี่ )
สัญกรณ์วงเล็บเหลี่ยมอนุญาตให้ใช้อักขระที่ไม่สามารถใช้กับเครื่องหมายจุดได้
var foo = myForm.foo[]; // incorrect syntax
var foo = myForm["foo[]"]; // correct syntax
รวมถึงอักขระที่ไม่ใช่ ASCII (UTF-8) เช่นเดียวกับในmyForm["ダ"]
( ตัวอย่างเพิ่มเติม )
ประการที่สองสัญกรณ์วงเล็บเหลี่ยมจะมีประโยชน์เมื่อจัดการกับชื่อคุณสมบัติที่แตกต่างกันไปตามวิธีที่คาดการณ์ได้:
for (var i = 0; i < 10; i++) {
someFunction(myForm["myControlNumber" + i]);
}
Roundup:
- เครื่องหมายดอทจะเร็วกว่าในการเขียนและอ่านได้ชัดเจนยิ่งขึ้น
- เครื่องหมายวงเล็บเหลี่ยมช่วยให้สามารถเข้าถึงคุณสมบัติที่มีอักขระพิเศษและการเลือกคุณสมบัติโดยใช้ตัวแปร
อีกตัวอย่างหนึ่งของตัวละครที่ไม่สามารถนำมาใช้ด้วยจุดสัญกรณ์เป็นชื่อคุณสมบัติที่ตัวเองมีจุด
ยกตัวอย่างเช่นการตอบสนอง JSON bar.Baz
อาจมีคุณสมบัติที่เรียกว่า
var foo = myResponse.bar.Baz; // incorrect syntax
var foo = myResponse["bar.Baz"]; // correct syntax