พารามิเตอร์ที่เป็นอ็อบเจ็กต์ของ 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);