[javascript] arguments 인자값의 변화
- 함수 인자값을 함수 실행 중 변경시 변경된다.
function argumentTest(a, b) {
console.log("a+b", a + b);
b = 10;
console.log(arguments);
console.log("a+b", a + b);
}
function argumentTest2(a, b) {
console.log(arguments);
b = 10;
}
argumentTest(1, 2);
argumentTest(1, 10);
/**
a+b 3
VM854:4 Arguments(2) [1, 10, callee: ƒ, Symbol(Symbol.iterator): ƒ]
VM854:5 a+b 11
VM854:2 a+b 11
VM854:4 Arguments(2) [1, 10, callee: ƒ, Symbol(Symbol.iterator): ƒ]
VM854:5 a+b 11
*/
// ------------------------------------------
// object는 값에 변화가 없음
var o = { 0: 1, 1: 2 };
console.log(o);
// VM888:2 {0: 1, 1: 2}
var a = o[0],
b = o[1];
b = 10;
console.log(o);
// VM888:7 {0: 1, 1: 2}
// ------------------------------------------
'[javascript]' 카테고리의 다른 글
[JavaScript] ES6 Class 생성 및 인스턴스 생성 (0) | 2020.08.19 |
---|---|
[javascript]Call 메소드 함수 예시 (0) | 2020.08.17 |
[Javascript] new Funtion의 사용한 동적(런타임) 함수 만들기 (0) | 2020.08.02 |
[javascript] 즉시함수의 여러가지 종류 (0) | 2020.04.06 |
[javascript] arr[i] = i 와 arr.push(i)의 성능 측정 (0) | 2020.04.05 |