티스토리 뷰

IT/Javascript

[Javascript] 매개변수 전달

DongChul 2016. 11. 11. 20:39

함수 매개변수는 모두 값으로 전달이 된다.

값이 원시 값이라면 변수 사이에서 원시 값을 복사하는것과 마찬가지이며 참조 값일 때도 변수 사이에서 참조 값을 복사하는 것과 마찬가지입니다.

변수는 값으로도, 참조로도 접근할 수 있지만 매개변수는 오직 값으로만 전달이 됩니다.

function addTen(num){

 num += 10;

 return num;

}

var count = 20;
var result = addTen(count);
alert(count); // 20
alert(result); // 30

위의 코드를 보면 값이 복사가 되어 전달이 되었다는것을 제대로 확인 할 수가 없으니 다른 예를 들어보겠습니다..

function setName(obj){
  obj.name = "Nicholas";
  obj = new Object();
  obj.name = "Greg";
}

var person = new Object();
setName(person);
alert(person.name); // "Nicholas"

함수의 값을 전달하였기 때문에 함수 내부에서 매개변수의 값이 바뀌었음에도 불구하고 원래 객체에 대한 참조를 그대로 유지한 것입니다.

'IT > Javascript' 카테고리의 다른 글

[Javascript] Function  (0) 2016.11.14
[Javascript] 반복메서드  (0) 2016.11.13
[Javascript] block level scope  (0) 2016.11.11
[Javascript] parseInt함수  (0) 2016.11.10
[Javascript] 숫자변환  (0) 2016.11.09
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함