JavaScript Voorwerp Parameters

Voorwerpe, anders as primitiewe waardes, word by verwysing oorgedra. Dit beteken dat die verandering van 'n voorwerp binne 'n funksie daartoe sal lei dat dit ook buite die funksie verander. Kyk na die voorbeeld:

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

let arr = [1, 2, 3];
func(arr);
console.log(arr); // sal ['!', 2, 3] uitdruk
Задание 1

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

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

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

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

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

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

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

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

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

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

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

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

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

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

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

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

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

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