Witam,
czy da się przypisać jedną zmienną js do drugiej? Np.: var a = "lol" var b = a?
Ten SS niechcący, więc on tu nieważny.
Witam,
czy da się przypisać jedną zmienną js do drugiej? Np.: var a = "lol" var b = a?
Ten SS niechcący, więc on tu nieważny.
hej
tak da sie
var a = 'ble';
var b = a;
console.log(b);
Napisz może jaśniej o co Ci chodzi. I czy chcesz, żeby te zmienne były ze sobą na stałe związane (czyli zmiana jednej w późniejszym okresie ma skutkować zmianą wartości drugiej zmiennej), czy interesuje Cię jedynie przypisanie wartości zmiennej a
do zmiennej b
, a potem każda z nich może żyć własnym życiem?
Dziękuję wszystkim za pomoc. Działa! @cerrato zmienna miała tylko jednorazowo przekazać wartość.
Nadmienię tylko, że taki myk nie będzie działać w przypadku tablic.
Freja Draco napisał(a):
Nadmienię tylko, że taki myk nie będzie działać w przypadku tablic.
To oczywiście jest nieprawda albo odpowiedź jest niepełna :( Taki myk będzie działać w przypadku tablic, z tym, że tablica w JS jest obiektem, a zmienna z przypisanym obiektem nie zawiera jego kopii tylko referencję. W związku z tym przypisanie b = a przypisuje referencję do obiektu, a nie kopię tego obiektu. Idąc dalej, w konsekwencji modyfikując obiekt przypisany do zmiennej b modyfikujemy również obiekt przypisany do zmiennej a, ponieważ to jest ten sam obiekt.
Czyli a = b przypisuje referencję, a nie kopię.
W celu skopiowania obiektu czy tablicy, stosujemy:
// kopiowanie właściwości obiektu
a = {dupa: 'dupa'};
b = Object.assign({}, a);
//klonowanie tablicy
a = [1, 2, 3, 4];
b = [...a];
//albo
a = [1, 2, 3, 4];
b = Array.from(a);