>  기사  >  웹 프론트엔드  >  JS의 new 연산자 원칙에 대한 간략한 논의

JS의 new 연산자 원칙에 대한 간략한 논의

怪我咯
怪我咯원래의
2017-07-04 15:22:321364검색

아래 편집자가 javascript의 newoperator 원칙에 대해 간략하게 설명할 것입니다. 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리고자 합니다. 에디터를 따라가서 살펴보겠습니다.

javascript의 new는 구문 설탕입니다. C++, Java, C#과 같은 객체 지향언어를 공부한 사람들은 클래스와 차이점이 있다고 생각합니다. js의 객체 구현 시 js에는 클래스가 없으며 모든 것이 객체이므로 new의 프로세스는 실제로 새 객체를 생성하고 새 객체의 프로토타입을 생성자의 프로토타입으로 설정하는 것입니다. new를 사용하는 과정에서 협업에 참여하는 객체는 3개가 있는데, 생성자 함수가 첫 번째 객체, 프로토타입 객체가 두 번째, 새로 생성된 빈 객체가 세 번째 객체입니다. 그러나 이 빈 개체는 진공이 아니지만 이미 프로토타입이 포함된

참조

(proto)

단계는 다음과 같습니다. (1) 빈 개체 obj를 만듭니다.

(2) 빈 객체(IE에는 이 속성이 없음) 멤버의 proto가

constructor

(3) Apply를 사용하여 생성자 함수를 호출하고 이것이 바인딩됩니다. 빈 객체 obj.

(4) 빈 객체 obj를 반환합니다.

new를 사용하는 대신 자신만의 함수를 작성할 수 있습니다. 샘플 코드는 다음과 같습니다.

function NEW_OBJECT(Foo){

var obj={};
obj.proto=Foo.prototype;
obj.proto.constructor=Foo;
Foo.apply(obj,arguments)
return obj;

}

위 내용은 JS의 new 연산자 원칙에 대한 간략한 논의의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.