Dmitry A. Soshnikov,
Пиши, пиши, вот цитаты B.E. со ссылками:
...the property's value is a *reference* to the object, not the object itself.
http://groups.google.com/group/mozil...ff6fa9deb204e1
JS is not C++. There is no deep or shallow copy on assignment. Object is a reference type, so v2 = v just copies the reference in v into v2, making both variables denote the same object.
http://groups.google.com/group/netsc...dd2121f1fb8424
There is no copy of any object data. The only thing that's copied is a *reference* (a safe pointer, if you will) that uniquely addresses the object.
http://groups.google.com/group/netsc...95f5eef93c1734
Just the reference - objects are reference types in JS, as in Java
http://groups.google.com/group/netsc...79c0c9f86a6336
Что-то по JScript на винграде есть...
liskov-y я прочитал (manual языка), да, это был бы подходящий термин, если бы прижился, там они чётко описывают, что значением переменной является reference на объект. Но раз не прижился, то пиарить не буду, только в качестве экскурса... меня полностью удовлетворяет то, как компактно и точно звучит первая цитата в твоём предыдущем сообщении.