我試圖讓變量「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