Параметрҳои-объектҳои JavaScript

Объектҳо, ба фарқи аз примитивҳо, бо истинода интиқол дода мешаванд. Ин маъно дорад, ки тағйир додани объект дар дохили функсия боиси он мегардад, ки он тағйир хоҳад ёфт ва берун аз функсия. Мисолро бубинед:

javascriptfunction func(arr) {
  arr[0] = '!';
}

let arr = [1, 2, 3];
func(arr);
console.log(arr); // ['!', 2, 3] -ро хориҷ мекунад
Задание 1

Муайян кунед, бидуни оғози код, чӣ ба консол хориҷ хоҳад шуд:

javascriptfunction func(obj) {
  obj.a = '!';
}

let obj = {a: 1, b: 2, c: 3};
func(obj);
console.log(obj);
Задание 2

Муайян кунед, бидуни оғози код, чӣ ба консол хориҷ хоҳад шуд:

javascriptfunction func(arg) {
  arg = '!';
}

let obj = {a: 1, b: 2, c: 3};
func(obj.a);
console.log(obj);
Задание 3

Муайян кунед, бидуни оғози код, чӣ ба консол хориҷ хоҳад шуд:

javascriptfunction func(obj) {
  obj = '!';
}

let obj = {a: 1, b: 2, c: 3};
func(obj.a);
console.log(obj);
Задание 4

Муайян кунед, бидуни оғози код, чӣ ба консол хориҷ хоҳад шуд:

javascriptfunction func(arr) {
  arr.splice(1, 1);
}

let arr = [1, 2, 3];
func(arr);
console.log(arr);
Задание 5

Муайян кунед, бидуни оғози код, чӣ ба консол хориҷ хоҳад шуд:

javascriptfunction func(arr) {
  arr.slice(1, 1);
}

let arr = [1, 2, 3];
func(arr);
console.log(arr);
Задание 6

Муайян кунед, бидуни оғози код, чӣ ба консол хориҷ хоҳад шуд:

javascriptfunction func(arr) {
  let newArr = arr;
  newArr[0] = '!';
}

let arr = [1, 2, 3];
func(arr);
console.log(arr);