คุณต้องการใช้เครื่องหมายจุลภาคเพราะถ้าคุณใช้โครงสร้างการมอบหมายงานหลายส่วนคุณจะยิงตัวเองไปที่จุดใดจุดหนึ่ง
ตัวอย่างจะเป็น:
>>> var a = b = c = [];
>>> c.push(1)
[1]
>>> a
[1]
พวกเขาทั้งหมดอ้างถึงวัตถุเดียวกันในหน่วยความจำพวกเขาไม่ "ไม่ซ้ำกัน" เนื่องจากเมื่อใดก็ตามที่คุณทำการอ้างอิงถึงวัตถุ (อาร์เรย์ตัวอักษรวัตถุฟังก์ชัน) จะส่งผ่านโดยการอ้างอิงไม่ใช่ค่า ดังนั้นหากคุณเปลี่ยนตัวแปรเพียงตัวเดียวและต้องการให้ตัวแปรเหล่านั้นทำงานทีละตัวคุณจะไม่ได้รับสิ่งที่คุณต้องการเพราะไม่ใช่วัตถุเดี่ยว ๆ
นอกจากนี้ยังมีข้อเสียในการมอบหมายงานหลายอย่างเนื่องจากตัวแปรรองกลายเป็นโลกและคุณไม่ต้องการรั่วไหลในเนมสเปซส่วนกลาง
(function() { var a = global = 5 })();
alert(window.global)
ขอแนะนำให้ใช้เครื่องหมายจุลภาคและควรเว้นวรรคจำนวนมากเพื่อให้สามารถอ่านได้:
var a = 5
, b = 2
, c = 3
, d = {}
, e = [];
var $cls = my.namespace.Foo = function(args){ ... }