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);