Virgüllere güvenmek istersiniz çünkü çoklu atama yapısına güvenirseniz, bir noktada kendinizi ayağınıza vurursunuz.
Bir örnek şöyle olabilir:
>>> var a = b = c = [];
>>> c.push(1)
[1]
>>> a
[1]
Hepsi bellekteki aynı nesneyi ifade eder, bir nesneye (dizi, nesne değişmezi, işlev) başvuruda bulunduğunuzda, değere göre değil, başvuruya göre iletildiği için "benzersiz" değildirler. Dolayısıyla, bu değişkenlerden yalnızca birini değiştirirseniz ve bireysel olarak hareket etmelerini isterseniz, istediğiniz şeyi elde edemezsiniz çünkü bunlar tek tek nesneler değildir.
İkincil değişkenlerin global olması ve global ad alanına sızmak istememeniz gibi çoklu atamada da bir dezavantaj vardır.
(function() { var a = global = 5 })();
alert(window.global) // 5
Okunabilmesi için virgül kullanmak ve tercihen çok sayıda boşluk kullanmak en iyisidir:
var a = 5
, b = 2
, c = 3
, d = {}
, e = [];
var $cls = my.namespace.Foo = function(args){ ... }