Օբյեկտների փոխանցումը հղումով JavaScript-ում
Զանգվածներն ու օբյեկտները որոշակիորեն տարբերվում են մնացած պրիմիտիվ տվյալների տեսակներից։ Տարբերությունն այն է, որ փոփոխականը, որը պահում է զանգված, իրականում չի պարունակում այն, այլ պարզապես հղվում է դրան։
Գործնականում սա նշանակում է, որ օբյեկտը մեկ այլ փոփոխականին վերագրելիս, երկու փոփոխականներն էլ կհղվեն նույն օբյեկտին։ Եկեք փորձենք գործնականում։ Ենթադրենք ունենք հետևյալ օբյեկտը՝
let obj1 = {a: 1, b: 2, c: 3};
Վերագրենք այն մի փոփոխականից մյուսին՝
let obj2 = obj1;
Փոխենք փոփոխականներից մեկը՝
obj2.a = '!';
Արդյունքում փոփոխությունները տեսանելի կլինեն նաև մյուս փոփոխականում՝
console.log(obj1); // {a: '!', b: 2, c: 3}
Առանց կոդը գործարկելու, որոշեք, թե ինչ կտպվի կոնսոլում՝
let arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
console.log(arr2);
Առանց կոդը գործարկելու, որոշեք, թե ինչ կտպվի կոնսոլում՝
let arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
arr2[1] = 'b';
console.log(arr1);
Առանց կոդը գործարկելու, որոշեք, թե ինչ կտպվի կոնսոլում՝
let arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
arr2[0] = 'b';
console.log(arr2);