เหตุใดข้อมูลโค้ดด้านล่างซึ่งนำมาจากบทความนี้จึงให้ผลลัพธ์ที่แตกต่างกันเนื่องจากการเปลี่ยนแปลงตำแหน่งของวงเล็บปีกกาเพียงครั้งเดียว
เมื่อวงเล็บปีกกาเปิด{
อยู่ในบรรทัดใหม่test()
จะแสดงundefined
และ "ไม่ - มันพัง: ไม่ได้กำหนด" ในการแจ้งเตือน
function test()
{
return
{ /* <--- curly brace on new line */
javascript: "fantastic"
};
}
var r = test();
try {
alert(r.javascript); // does this work...?
} catch (e) {
alert('no - it broke: ' + typeof r);
}
เมื่อรั้งอยู่ในสายเดียวกับreturn
, test()
ผลตอบแทนที่วัตถุและ "มหัศจรรย์" จะรับการแจ้งเตือน
function test()
{
return { /* <---- curly brace on same line */
javascript: "fantastic"
};
}
var r = test();
try {
alert(r.javascript); // does this work...?
} catch (e) {
alert('no - it broke: ' + typeof r);
}
return
แตกต่างจากที่อื่นเล็กน้อยและเส้นแบ่ง "หมายถึง" ในจุดนั้นมากกว่าที่จะเป็น "กลางคัน"