Как заставить две переменные ссылаться на один и тот же объект в памяти?
Доброго дня, уважаемые JavaScript-гуру. Обыскал по справке и по руководству - не могу понять как заставить две переменные ссылаться на один и тот же объект в памяти?
делаю cb=b=1; и после изменения b, в cb остается старое значение. можно ли сделать так чтобы при изменении b, то же значение было бы и в cb? |
в нашем императивном языке так низя
|
Стандарт явно говорит что примитивные типы копируются по значению;
т.е. в строке "cb=b=1" переменным присваивается значение примитивного типа и никак такое поведение обойти невозможно; но можно добиться схожего поведения через сеттеры и гетеры function MyType (par){ this._val = par; }; MyType.prototype = { set val(p) {return this._val = p}, get val() {return this._val} }; cd = b = new MyType (1);; b.val = 15; alert (cd.val); b.val = b.val + b.val + b.val; alert (cd.val); к переменным придется обращатся не как к "cd" , "b" а как "cd.val" и "b.val" IE не поддерживает стандарт по этому такой код там может не работать |
Часовой пояс GMT +3, время: 03:02. |