我想在javascript中给出变量引用。
例如,我想做:
a=1
b=a
a=2
且有b=2,并相应地改变为a。
这在 JavaScript 中可能吗?
如果不是,有没有办法像 a.onchange = function () {b=a} 那样?
我想做的是创建一个像 makeobject 这样的函数,它创建一个对象并将其放入数组中,然后像这样返回它
function makeobject() {
objects[objects.length] = {blah:'whatever',foo:8};
}
所以我能做的
a=makeobject()
b=makeobject()
c=makeobject()
然后在代码中做
for (i in objects) {
objects[i].blah = 'whatev';
}
并更改 a、b 和 c 的值
您可以使用新的对象文字语法来实现此目的,该语法在大多数浏览器中都运行良好。
var o = {
_a : null,
get a() { return this._a; },
set a(v) { this._a = v; },
get b() { return this._a; },
set b(v) { this._a = v; }
};
o.a = 2;
o.b = 3;
o.a = 4;
alert(o.b); // alerts 4
另一种选择是创建您自己的参考对象。
function Ref(obj, name, otherName) {
this.obj = obj;
this.name = name;
this.otherName = otherName;
}
Ref.prototype.assign = function (v) {
this.obj[this.name] = this.obj[this.otherName] = v;
}
var o = {
a : 1,
b : 4
};
var ref = new Ref(o, 'a', 'b');
ref.assign(3);
alert(o.b);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)