자바스크립트 소스 해석점요~~~

· 2010-03-23 (화) 13:37:32 · 1536 · 4
어떻게 이엏게 나왔는지 이해가 안되는데 설명좀 부탁드려요..ㅠ
<script>
function outerFunc(base) {
 var punc = "!";

//안쪽함수
function returnString(ext) {
  return base + ext + punc;

}

  return returnString;
}

//안쪽함수로의 접근을 생성한다.
var baseString = outerFunc("Hello");
//안쪽함수는 여전히 바깥쪽 함수 인자에 접근할 수 있다.
var newString = baseString("World");
document.writeln(newString);
</script>
결과화면
---------------
HelloWorld!
---------------
|

댓글 4개

var baseString = outerFunc("Hello");

baseString 변수는 outerFunc 함수의 인자와 return 함수를 상속받았네요.

그러면 baseString 변수는 함수로 변환되었는데요 다시

var newString = baseString("World");

위 부분은 outerFunc 함수의 return 함수를 사용하게 됨니다.

document.writeln(newString);

그래서 결과적으로 Hello World! 를 출력하게 되는것이구요.

설명이 미숙하다면 다음분께서... ↓
2010-03-23 (화) 14:21:24
구글에서 javascript 클로저 로 검색 하면 원하는 정보를 얻으실수 있습니다.
개인적으로 자바스크립트에서 가장 직관적이지 못한(저 개인적인 주관) 개념입니다.
책을 볼때는 아하 그렇구나 하다가도, 다시 보면 이해가 안간다는 -_-
2010-03-24 (수) 19:08:17
어렵다..
2010-03-25 (목) 14:46:43
소중한 답글 감사합니다~^^
댓글을 작성하시려면 로그인이 필요합니다.

자유게시판

202,934건
+
제목 글쓴이 날짜 조회
10-03-23 조회 4,621
10-03-23 조회 1,876
10-03-23 조회 1,483
10-03-23 조회 2,235
10-03-23 조회 1,919
10-03-23 조회 1,589
10-03-23 조회 3,608
10-03-23 조회 1,487
10-03-23 조회 2,545
10-03-23 조회 1,395
10-03-23 조회 1,654
10-03-23 조회 1,360
10-03-23 조회 1,537
10-03-23 조회 1,273
10-03-23 조회 2,332
10-03-23 조회 1,569
10-03-23 조회 1,397
10-03-23 조회 1,345
10-03-23 조회 2,228
10-03-22 조회 1,903