我试图让变量“my_a”和letters.a指向同一个对象。是否有可能有2个变量指向同一个对象? (javascript)
//i want letters.a to reference (point to) my_a, not be a copy...
//expected output should be: letters.a = c
//made variables into Objects.. but didn't help.
var my_a = new Object('a');
var my_b = new Object('b');
var letters = {'a': my_a, 'b': my_b};
$('#output').append('my_a = ' + my_a + '<br>');
$('#output').append('leters.a = ' + letters.a + '<br>');
my_a = new Object('c');
$('#output').append('my_a = ' + my_a + '<br>');
$('#output').append('letters.a = <span style="color:red">' + letters.a + '</span>');
看到这个小提琴:
但你可以通过输出看到的,这是行不通的。
任何想法?这可能与JavaScript?
谢谢。
那么,你并不是真正在做你认为自己的东西。您将一个对象的内部变量指向另一个对象的值。做你想做的事情虽然在JavaScript中很愚蠢。请问你最终的目标是什么?也许我们可以找到更好的解决方案。 – SpYk3HH
@ SpYk3HH我只需要参考当前的“字母”。只有两个“字母”。旧的或新的。他们需要在不同的时间进行切换。 letter1变旧,letter2变新。 – Wesley
@韦斯利我用一种可能的方法更新了我的答案,具体取决于您的浏览器支持需求。 – Pointy