Objektumok átadása referenciával JavaScriptben

A tömbök és objektumok némileg eltérnek a többi primitív adattípustól. A különbség az, hogy a tömböt tároló változó valójában nem tartalmazza magát a tömböt, hanem csak hivatkozik rá.

A gyakorlatban ez azt jelenti, hogy amikor egy objektumot egy másik változónak adunk, mindkét változó ugyanarra az objektumra fog hivatkozni. Próbáljuk ki gyakorlatban. Tegyük fel, hogy a következő objektumunk van:

javascriptlet obj1 = {a: 1, b: 2, c: 3};

Adjunk át egy változóból egy másikba:

javascriptlet obj2 = obj1;

Módosítsunk az egyik változón:

javascriptobj2.a = '!';

Ennek eredményeképpen a módosítások láthatók lesznek a másik változóban is:

javascriptconsole.log(obj1); // {a: '!', b: 2, c: 3}
Задание 1

A kód futtatása nélkül határozd meg, mi jelenik meg a konzolon:

javascriptlet arr1 = [1, 2, 3];
let arr2 = arr1;

arr1[0] = 'a';
console.log(arr2);
Задание 2

A kód futtatása nélkül határozd meg, mi jelenik meg a konzolon:

javascriptlet arr1 = [1, 2, 3];
let arr2 = arr1;

arr1[0] = 'a';
arr2[1] = 'b';

console.log(arr1);
Задание 3

A kód futtatása nélkül határozd meg, mi jelenik meg a konzolon:

javascriptlet arr1 = [1, 2, 3];
let arr2 = arr1;

arr1[0] = 'a';
arr2[0] = 'b';

console.log(arr2);