최근에 JavaScript: The Good Parts를 읽고 있는데 지금까지 편안하고 즐거웠으며 내용도 매우 좋습니다. 하지만 상속 챕터
에 도달했을 때 나는 그것이 무엇을 말하는지 전혀 몰랐습니다. 다음은 챕터 내용입니다.
부분 집합으로 개체를 구성할 수 있습니다. 예를 들어, 모든 개체에 간단한 이벤트 처리 기능을 추가할 수 있는 함수
를 만들 수 있습니다. 이는 on 메서드,
fire 메서드 및 개인 이벤트 레지스트리를 추가합니다.
으아악
느슨한 타이핑은 클래스의 계보를 걱정하는 유형 시스템에 부담을 주지 않기 때문에
여기서 큰 이점이 있습니다. 내용의 문자
.
만약 객체의 비공개 상태에 액세스할 수 있기를 원한다면 이를
my 번들
으로 전달할 수 있습니다.
영어의 "parts"는 부분을 뜻하는데 여기서는 그 의미를 어떻게 정확하게 표현해야 할지 모르겠습니다. 대략적으로 말하면, 몇 가지 방법을 통해 여러 "부분"을 개체에 결합할 수 있습니다. 물론 구성 기능에서는 이를 단순화하기 위해
전달된 객체가 됩니다.this
上。比如eventuality
로 결합합니다. 으아악등록된 이벤트(처리함수)를 저장하는데 사용됩니다. 물론 이 함수는 객체에 이벤트 처리 기능을 추가합니다.
JSON 직렬화와 같이 개체에 추가해야 하는 또 다른 함수가 있다고 가정합니다. 즉, 현재 개체를 JSON 문자열로 직렬화하는that
添加on()
和fire()
两个方法用于事件的注册和触发,而闭包变量registry
메서드를 추가하는 것입니다. 으아악
클래스가 있습니다. 이 클래스에는 자체 기능 외에도 이벤트 및 JSON 기능이 필요하므로 생성자에서 이 작업을 수행할 수 있습니다toJson()
그런 다음으아악
Boo
마지막 두 문장은 소위 구성 부분이 되어야 합니다보충제
이 메서드는 각 개체에 대해 관련 메서드 함수의 복사본을 설정하며 정의된 메서드를 재사용할 수 없으므로 여전히 상대적으로 리소스를 많이 소비합니다. 그러나 이 단락은 상속에 대한 다음 지식 포인트를 소개하기 위해 튜토리얼에 도입되어야 합니다.
상속 얘기가 나와서 말인데, ES2015 구문은 이미 클래스와 확장을 지원합니다. 이는 이전 생성자 메서드보다 더 엄격하고 편리합니다. 따라서 이 부분에서는 새로운 클래스 구문에 대해 자세히 알아보고 이전 구문에 너무 얽매이지 않는 것이 좋습니다. 클래스 구문. 앞으로 어느 정도 기초가 있고 시간이 있을 때, 관심이 있다면 프로토타입 메커니즘을 기반으로 JS 및 OO 구현의 프로토타입 메커니즘을 연구할 수 있습니다.