Javascript 原型继承类
Javascript prototype inheritance classes
<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 以及何时使用 new animal((
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
的实例继承
相关文章:
- JavaScript对象不是从原型链继承的
- 如何使用原型继承编写一个整洁灵活的复杂javascript应用程序
- $emit,$broadcast,原型继承
- Javascript:继承原型而不重新定义构造函数
- 原型继承未按预期工作
- JavaScript中的原型继承.我可以称之为“超级”等价物吗?
- 为什么函数对象的实例没有继承函数原型属性
- 不创建父对象的原型继承
- Javascript基本继承与Crockford原型继承
- JavaScript-构造函数参数和原型继承
- 使用Object.create作为原型的原型继承将[Object]作为实例的原型
- javascript继承中正确的原型做作是什么
- 如何进行JavaScript原型继承(原型链)
- Javascript原型继承原型函数调用
- 对象不继承原型函数
- 从其他类继承原型方法,而不重写自己的原型方法
- JavaScript继承原型
- 继承原型
- Javascript继承/原型混淆
- 使用.call(this)继承原型