javascript
에서 function
에 parameter
를 넘겨주는 경우는 크게 2가지로 분류할 수 있다.
function changeParameter (prameter){ console.log(parameter);// 1 parameter = 10; console.log(parameter);// 1 } let p = 1; changeParameter(p); console.log(p); // 1
function changeParameter (prameter){ console.log(parameter);// {a:1} parameter.b = 10; console.log(parameter);// {a:1, b:10} } let obj = {a:1}; changeParameter(obj); console.log(obj); // {a:1, b:10}
function changeParameter (prameter){ console.log(parameter);// {a:1} parameter.b = {c:10,d:30}; console.log(parameter);// {c:10,d:30} } let obj = {a:1}; changeParameter(obj); console.log(obj); // {a:1}
javascript
는 Object
가 일급객체기 때문에 parameter
로 넘겨줄 수 있고,
함수 내부에서 변화를 주는 경우 함수를 호출한 이후에도 원본값에 변화를 줄 수 있으므로 조심해야한다.