게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
범용 네임스페이스 함수관련질문입니다
게시물ID : programmer_14322짧은주소 복사하기
작성자 : kasiotori
추천 : 0
조회수 : 421회
댓글수 : 2개
등록시간 : 2015/11/08 12:48:29
출처 :http://www.nextree.co.kr/p7650/

<!doctype html>
<html>
<head>

<meta charset="UTF-8">



</head>
<body>
<script>
// 가장 상단에 위치할 객체는 먼저 선언합니다.
// (namespace함수를 전역으로 선언하지 않기 위함입니다.)
var MYAPP = MYAPP || {};

MYAPP.nsFunc = function (ns_string) {
// '.'으로 구분된 네임스페이스 표기를 쪼갭니다
var sections = ns_string.split('.'),
parent = MYAPP,
i;

// 최상단의 MYAPP객체는 이미 선언되었으므로 제거합니다.
if (sections[0] === "MYAPP") {
sections = sections.slice(1);
}

var s_length = sections.length;
for (i=0; i<s_length; i+=1) {
// 프로퍼티가 존재하지 않아야만 생성합니다.
if (typeof parent[sections[i]] === "undefined") {
console.log(i +"+"+sections[i])
parent[sections[i]] = {};
console.log(parent)
}
parent = parent[sections[i]];
}
return parent;
};


MYAPP.nsFunc('korea.seoul.geumcheongu.gasandigital1ro.jeiplatz.name');
console.log(window.MYAPP);
</script>
</body>
</html>

저기서     console.log(parent) 부분을 볼때 저는
korea라는 값이 들어와서 undefined이니 빈 객체를 만든후 기존 객체(parent)에 추가 하고
그다음에 seoul이라는 값이 오고 undefined이니 빈객체만든후 기존객체 parent.korea 라는 객체에 추가하고..

이렇게 진행된다고 생각해서 콘솔결과도 위와 같이 나올줄알았는데 정 반대로 나오더라고요
제가 잘못이해하고있는부분을 알려주시면 감사하겠습니다
제목 없음.png

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호