JavaScript 상속: Defacto 표준 공개
JavaScript 상속에 대해 다루는 수많은 기사에도 불구하고 사용 가능한 접근 방식이 너무 많아서 혼란이 자주 발생합니다. 이 수수께끼 같은 주제를 명확히 하기 위해 우리는 가장 많이 받아들여지는 방법을 탐색하고 특정 시나리오에 맞는 맞춤형 지침을 제공합니다.
적절한 상속 메커니즘 선택
new 및 Object.create는 최적의 상속을 선택하는 데 중요합니다. 전략. 두 기술 모두 객체 생성을 용이하게 하지만 목적은 서로 다릅니다. Object.create는 다른 객체를 상속하는 새 객체를 생성하는 반면, new는 추가로 생성자 함수를 호출합니다.
사용 사례에 적용
귀하의 목표는 확장 가능한 하위 클래스인 RestModel 및 LocalStorageModel을 사용하여 Model이라는 기본 개체를 설정하는 것입니다. 이 시나리오에서는 Object.create가 선호되는 방법으로 나타납니다. 이 접근 방식은 Model 생성자를 호출하지 않고 프로토타입 상속 계층 구조를 생성하려는 의도와 일치합니다.
<br>RestModel.prototype = Object.create(Model.prototype);<br></ pre></p> <p><strong>생성자 호출 하위 클래스</strong></p> <p>RestModel에 대한 모델 생성자를 호출하려는 경우 이는 상속을 통해 수행되지 않습니다. 대신 <strong>call()</strong> 또는 <strong>apply()</strong>는 생성자 실행을 트리거하는 수단을 제공합니다.</p> <p><pre class="brush:php;toolbar:false"><br>함수 RestModel() {</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">Model.call(this); // Apply Model's constructor on the new object ...
}
이러한 개념을 이해하면 JavaScript에서 상속을 확실하게 구현하여 애플리케이션에 필요한 유연성과 확장성을 강화할 수 있습니다.
위 내용은 JavaScript 상속: Object.create와 new: 어느 것이 당신에게 적합합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!