js对象继承之原型链继承实例

复制代码 代码如下:

<script type="text/javascript">
//定义猫的对象
var kitty  = {color:'yellow',bark:function(){alert('喵喵');},climb:function(){alert('我会爬树')}};

//老虎对象的构造函数
function tiger(){
 this.color = "yellow and black";
 this.back = function(){
  alert('吼吼...');
 }
}

//给构造函数声明原型,那么构造出的对象,就会有一个祖先:即该原型
tiger.prototype = kitty;
//或 tiger.prototype = new kitty();//如果kitty为function,则采用这种方式

var t = new tiger();
document.write(t.color);
t.climb();//当调用老虎的属性或方法时,首先在其构造函数找;如果没有,则到老虎构造函数的原型。但要注意,这里它并不是把原型对象里的climb()方法复制到自身。这就是原型链查找。
</script>


其它说明:kitty也是有构造方法的,即new Object()。Object默认也有一些方法和属性,见javascript手册中的 "object对象"。同时,它也有原型,只是为空而已 { }。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgxgwz.html