2015-11-26 2 views
0
 <html> 
     <body> 
     <script>  
     function animal(kane){ 
     this.kane:"aaaaa"; 
     } 
     function Rabbit(name) { 
     this.name = name; 
     } 
     Rabbit.prototype.__proto__=animal.prototype; 
     var a=new animal("aaaa");// this wont work when i put a alert box 
     var rabbit = new Rabbit('John'); 
     alert(rabbit.kane);// i should get aaaa but i am getting undefined 
    </script> 
    </body> 
    </html> 

я должен получить AAAA в окне предупреждения, но как я могу сделать прототипичное наследование в этой ситуации КОГДА ИСПОЛЬЗОВАТЬ animal.prototype и когда использовать новое животное()Javascript наследование прототипа класс

+0

Что такое 'animal' должен делать с этим' Kane 'параметр требуется? – Bergi

ответ

-2
kane:"aaaaa"; 

неправильный синтаксис здесь, он должен быть this.kane = "aaaaa";

теперь Rabbit случаев, чтобы получить свойство kane, вы можете использовать конструктор кражу как

function Rabbit(name) { 
    animal.call(this); // constructor stealing 
     this.name = name; 
} 

Другой подход

var a=new animal("aaaa"); 
var rabbit = Object.create(a); 

в этом подходе конструктор угона не требуется, так как ваш непосредственно наследующий от экземпляра animal

+0

Я сделал это, но бесполезно все еще не могу предупредить aaaaa –

+0

@DvmSrikantXlador вот скрипка https://jsfiddle.net/mxv1kyxw/ – Ramanlfc

+0

Спасибо! некоторые проблемы с моими скобками Adobe –

Смежные вопросы