English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JavaScript 기본 튜토리얼

JavaScript 객체

JavaScript 함수

JS HTML DOM

JS 브라우저 BOM

AJAX 기본 튜토리얼

JavaScript 참조 매뉴얼

JavaScript 객체 원형

원형JavaScript 객체가 특성을 상속받는 메커니즘입니다.

이전 장에서 우리는 어떻게 사용할 수 있는지 배웠습니다구조 함수

function User(fname, lname, age, loc) {
   this.firstName = fname;
   this.lastName = lname;
   this.age = age;
   this.location = loc;
}
var Seagull = new User("Seagull", "Anna", 22, "New Delhi");
var tarush = new User("Tarush", "Balodhi", 34, "Bihar");
테스트를 보세요‹/›

우리는 또한 알게 되었습니다할 수 없습니다새로운 속성을 기존의 객체 구조 함수에 추가하십시오:

User.weapon = "Sword";
테스트를 보세요‹/›

구조 함수에 새로운 속성을 추가하려면, 그것을 구조 함수에 추가해야 합니다:

function User(fname, lname, age, loc) {
   this.firstName = fname;
   this.lastName = lname;
   this.age = age;
   this.location = loc;
   this.weapon = "Sword";
}
테스트를 보세요‹/›

때로는 나중에 모든 객체(예제) 간에 공유될 생성자 함수에 새 속성과 메서드를 추가하고 싶을 때가 있습니다. 답은 객체입니다원형

prototype 속성 사용

prototype 속성은 생성자 함수에 속성과 메서드를 추가할 수 있게 합니다.

이 예제에서 prototype 속성은 User 객체 생성자 함수에 새 속성을 추가할 수 있도록 합니다:

function User(fname, lname, age, loc) {
   this.firstName = fname;
   this.lastName = lname;
   this.age = age;
   this.location = loc;
}
User.prototype.weapon = "Sword";
테스트를 보세요‹/›

이 예제에서 prototype 속성은 User 객체 생성자 함수에 새 메서드를 추가할 수 있도록 합니다:

function User(fname, lname, age, loc) {
   this.firstName = fname;
   this.lastName = lname;
   this.age = age;
   this.location = loc;
}
User.prototype.fullName = function() {
return this.firstName + " " + this.lastName;
};
테스트를 보세요‹/›

주의:원형을 수정하지 마세요. 표준(내장) JavaScript 객체의 원형을 수정하지 마세요.