2016-09-01 1 views
1

자바 스크립트에서 프로토 타입 상속의 간단한 예제를 제공하려하지만 실행되지 않습니다. 친절하게 도와주세요!간단한 자바 스크립트 프로토 타입 예제

HTML 당신을 위해

<script> 
var animal = {eats: 'true'}; 
animal.prototype.name = "Lion"; 
console.log(animal); 
</script> 
+0

"실행되지"를 정의하십시오. – Teemu

+0

당신이하는 말을 이해할 수 없습니까? – Deadpool

+0

하하, "달리지 말라"는 말은 무슨 뜻입니까? 실행 중이며 오류가 발생했습니다. 콘솔을 확인하십시오. 'prototype'은 함수의 유일한 속성입니다 ... – Teemu

답변

2

var animal = { name: 'Lion'}; 
 
var myanimal = Object.create(animal) 
 
myanimal.eats = "true"; 
 
console.log(myanimal.name);
예, 당신은 한 프로토 타입이 실제로 존재로 ... 프로토 타입에 속성을 추가 할 수 있습니다. 귀하의 경우 프로토 타입을 먼저 초기화해야합니다. 예를 들어 :

var animal = {eats: 'true'}; 
animal.prototype={}; 
animal.prototype.name = "Lion"; 
console.log(animal); 

그러나 프로토 타입을 정의하는 더 좋은 방법입니다

var Animal=function(name){ 
    this.name=name; 
} 

// Add new members to the prototype: 
Animal.prototype.toString=function() 
{ 
    return "animal "+this.name; 
} 

// Instance objects: 
var a1=new Animal("panther"); 
console.log(a1.toString()); 
1

쉬운 방법입니다. 비 생성자 방식을 사용하여 기존 객체가있는 객체를 만들 수 있으므로 javascript의 프로토 타입 상속을 사용할 수 있습니다. 다른 하나는 함수를 사용하고 있습니다.

동물의 질문은 전에 물어 보았습니다 : Basic JavaScript Prototype and Inheritance Example for Animals, pls는 여기에 stackoverflow의 다른 javascript protoytype 게시물을 따라 가며 많은 시간이 소요되었습니다. 프로와 활용하십시오.

+0

은 프로토 타입 상속을 사용했습니다. – Deadpool

+1

위 예제는 이해하기 쉬운 예제 만 위해 함수를 사용하지 않고 프로토 타입 적으로 기존 객체를 상속하는 방법을 보여줍니다. 갈 길이 멀다. ES6에서 함수와 클래스를 사용할 수도 있습니다. – ajaykumar

+0

@Peterson 동물 연결을 추가했습니다. – ajaykumar

2
var Animal = function() { 
    this.eats = 'true'; 
}; 

Animal.prototype.name = 'Lion'; 

var a = new Animal; 

console.log(a.name);