다음 코드 예제는 동일합니까?다른 JS 네임 스페이스 선언
버전 1 :
var myNamespace = {};
myNamespace.say = function() {...}
버전 2 (JS-바이올린 : https://jsfiddle.net/542wbkat/) :
var myNamespace = new function() {
this.say = function() {...};
}
버전 3 :
var myNamespace = {
"say": function() {...}
}
나는 순수 자바 배경에서 오는
이 나는 다소 혼란 스럽다. 코드를 테스트 해 보았는데 모두 정상적으로 작동하지만 JS가 내부적으로 버전을 다르게 처리하는지 궁금합니다. 이 게시물을 쓰기 전에 모질라 데브 네트워크 https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects에서 문서를 읽었지만 여전히 내 머리를 감쌀 수는 없습니다.
추가 질문 : 'myNamespace'네임 스페이스에서 만든 함수를 (클래스의 인스턴스로) 인스턴스화 할 수 있습니까? 또는 나는 이것을 얻고있다
건배!
그런데 지금은 예전의 코드를 정리하고 난 3 개 가지 버전이 사용 된 파일과 내가 청소하고 프로그램을 발견 성공적으로 조용히 실행 중이었습니다. 심지어 직접 스크립트를 테스트했습니다. – FabianTe
나는 작동하는 버전 2를위한 바이올린을 만들었습니다 : https://jsfiddle.net/542wbkat/ – FabianTe
기능들과 함께'new'를 사용하지 마십시오 .... –