增加JS原型和原型链的理解哦哦哦哦哦哦~~~~
function Vehicle() {
this.run = function () {
console.log('i can run');
}
}
function Car() {
this.load =function() {
console.log('i can load people');
}
}
var Truck = new Vehicle();//创建一个Vehicle()的实例 Truck;
Car.prototype = new Vehicle();//给Car的显示原型指向new Vehicle()创建的新实例;
//然后给Car的显示原型(vehicle)增加新的属性 fast
Car.prototype.fast = function() {
console.log('i can run fast');
};/*该方法的添加一定要在创建实例后,若Car.prototype = new Vehicle();在后面的话会覆盖fast这个方法*/
//创建一个Car的实例,
//1.然后调用Car的方法
//2.再调用Car原型扩展的方法fast。
var Bens = new Car();
Bens.run();
Bens.fast();
//在这打印出来就可以看出,Car.prototype.fast(只是一个指针而已)并没有改变原来的Vehicle()
console.log(Truck);
//以下的两个console.可以看出fast是在Vecicle里面的一个方法。
//run是Car里的方法。
console.log(Bens);
console.log(Car.prototype);
console.log(Bens instanceof Car);