///Javascript继承机制的设计思想引用http://www.ruanyifeng.com/blog/2011/06/designing_ideas_of_inheritance_mechanism_in_javascript.html
//一个对象都是一个构造函数的实例化 所有的需要共享的方法和属性都放在了prototype中,成为prototype的属性或者方法
//而私有的方法和属性则放在构造函数中
//关于prototype的测试实验
function Animail(name){
this.name = name ;
}
Animail.prototype.spcize = "1"; //spcize 需要共享的属性或者方法
var a1 = new Animail("apple");
var a2 = new Animail("banana");
//这边是用的prototype的属性的引用
console.log(a1.spcize);
console.log(a2.spcize);
//应该是重新创建了spcize对象,覆盖原来的引用,然后进行赋值(猜测)
a1.spcize = "2";
a2.spcize = "3";
console.log(a1.spcize);
console.log(a2.spcize);
delete a1.spcize;//删除对象specize之后,a1.specize编程Animail。prototype。specize的引用
//delete a2.spcize;
Animail.prototype.spcize = "5";
console.log(a1.spcize);
console.log(a2.spcize);
输出如下