Próbuję mieć obie zmienne "my_a" i letters.a wskazują na ten sam obiekt.Czy jest możliwe, aby 2 zmienne wskazywały na ten sam obiekt? (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>');
Zobacz ten skrzypce:
Ale jak widać przez wyjście, to nie działa.
Wszelkie pomysły? Czy to możliwe z javascript?
Dziękuję.
Cóż, tak naprawdę nie robisz tego, co myślisz, że jesteś. Wskazujesz wewnętrzną zmienną jednego obiektu na wartość innego obiektu. Aby zrobić to, co próbujesz zrobić, jest po prostu głupie w JavaScript. Czy mogę zapytać, jaki jest twój cel końcowy? Być może uda nam się znaleźć lepsze rozwiązanie. – SpYk3HH
@ SpYk3HH Potrzebuję tylko odniesienia do aktualnej "litery". Są tylko dwie "litery". Stary lub nowy. Muszą być przełączane w różnym czasie. litera 1 staje się stara, litera 2 staje się nowa. – Wesley
@Wesley Zaktualizowałem swoją odpowiedź z możliwym podejściem, w zależności od potrzeb twojej przeglądarki. – Pointy