2013-11-25 6 views
0

아래처럼 객체를 만드는 것을 본 적이 있는데, 실제로이 객체를 만드는 것은 무엇입니까?javascript 객체를 만드는 가장 좋은 방법

var myApp = myApp || {}; 

나는 누군가가 나에게 두 유형의 차이를 알려 주시기 바랍니다 수있는이

var myApp={property:"value",method:function(){}}; 

같은 개체를 만드는거야.

답변

2

첫 번째 예제는 변수가 이미있는 경우 myApp을 대체하지 않으며 익숙하지 않은 네임 스페이스에서 작업하거나 전역 변수로 작업 할 때 유용합니다. 당신은 생성 후 myApp의 속성을 지정해야합니다.

두 번째 예는 항상 myApp의 새 버전을 만들고 만들 때 속성을 지정할 수 있도록합니다. 이 변수는 이미 myApp이라는 다른 변수보다 우선합니다.

두 예제 모두 동일한 '유형'의 객체를 만듭니다. 실제로 한 유형의 객체 만 있습니다. 객체를 서로 다른 것으로 만드는 것은 소유하고있는 속성입니다.

+0

thnks @Elliot Bonneville – Online

+0

또한 첫 번째 예에서'myApp'가 객체 인 경우 객체처럼 동작합니다. 그러나, 그것이 '참'이라면, 0이지만 문자열이 아니라면, 이상하게 행동 할 것입니다. 기본적으로 myApp는 진리 -y가 될 수 있지만 실제 객체는 될 수 없습니다. –

1

첫 번째 예제에서는 이미 값이 true이면 자체 값을 지정하고 그렇지 않은 경우에는 속성이없는 객체를 지정합니다.

두 번째 예에서는 속성이있는 개체를 할당합니다.

+0

thnks @Quesntin – Online

+0

안녕하세요, @quentin, 이미 같은 이름의 객체가 이미 존재하는 경우 첫 번째 예제가 어떻게됩니까?이 객체에 대해 작성한 속성 n 개의 메소드를 할당하는 방법은 무엇입니까?? plz 비트가이 코드를 자세히 설명합니다 – Online

+0

true 값을 가지며 기존 값을 자체에 할당하고 새 값으로 덮어 쓰지 않습니다. – Quentin

관련 문제