JavaScript에서는 새 기능을 정의 할 때 실제로 새 클래스를 선언 하며이 기능 자체는 클래스 생성자와 동일합니다. 다음 코드는 새로운 사람 클래스를 생성하는 두 가지 다른 방법을 보여주고 Person.prototype 정의는 함수 정의를 따릅니다.
var person = function (name) {// 익명 함수 로이 함수를 사람 변수에 할당합니다. 현재 사람은이 수업이됩니다 .name = 이름; } function person (name) {// 사람 클래스를 표현하기 위해 Person이라는 함수를 직접 정의합니다. this.name = name; } person.prototype = {// Person의 프로토 타입 도메인 정의 PrintName : function () {// 인쇄 함수 경고를 정의합니다 (this.name); }}함수를 통해 클래스를 선언 한 후 새 연산자를 통해 클래스를 인스턴스화 할 수 있습니다. 이렇게하면 클래스 멤버 기능을 호출하여 논리를 완료 할 수 있습니다.
var person = 새로운 사람 ( "Joe Smith"); // 새 연산자를 사용하여 새 사람 인스턴스를 생성하고 가변 사람에게 할당합니다 .PRINTNAME (); // 사람은 인스턴스에 대한 참조로 간주 될 수 있으므로 개인 클래스의 멤버 기능은이 참조를 통해 호출 할 수 있습니다.
새로운 클래스의 인스턴스를 작성하는 전체 프로세스와 단계를 요약하겠습니다.
1. 함수 (익명 또는 실명)를 정의하여 새 클래스를 선언합니다.
2. 필요한 경우이 새로운 클래스의 프로토 타입 영역을 정의하십시오.
3. 새 연산자를 사용하여 정의한 기능을 따라 새 클래스의 인스턴스를 만듭니다. JavaScript 컴파일러가 새 연산자와 만나면 실제로 빈 클래스 인스턴스 변수를 만듭니다.
4.이 모든 클래스의 프로토 타입 영역의 속성과 메소드를이 새로운 인스턴스에 복사 하고이 모든 포인터를 멤버 기능의 새로 만든 인스턴스에 가리 킵니다.
5. 다음으로 새 연산자 바로 다음에 기능을 실행하십시오.
6.이 기능을 실행할 때 존재하지 않는 속성을 할당하려고하면 JavaScript 컴파일러 가이 인스턴스의 범위 내 에서이 속성을 자동으로 생성합니다.
7. 함수가 실행 된 후이 초기화 된 인스턴스를 반환하십시오.
프로토 타입에서 클래스 객체를 사용하여 비교적 간단한 방식으로 새 개체를 선언 할 수 있습니다. class.create ()를 사용하면 프로토 타입은 기본 생성자 initialize ()를 생성합니다. 이 기능을 구현하면 Java의 생성자와 유사한 방식으로 새 클래스의 인스턴스를 만들 수 있습니다.