js原型链 prototype
通过对象字面量创建对象(等同于 new Object())
var cat = {};
获取原型有两种方法:
Object.getPrototypeOf(cat)
cat.__proto__ // es5中新增方法
var cat={};
var dog={}
cat.name = 'Tom';
dog.name == undefind //cat只是改变了实例本身的name属性,对于同级的dog并不影响
//cat、dog的原型是都是指向(Object.prototype),通过cat修改原型,那么其他继承的对象,也会同时改变
cat.__proto__.age = 23;
dog.age == 23;
通过new创建对象
function PERSON(){}
var Jim = new PERSON();
Jim.prototype // 获取原型方法
通过function创建的函数,称为构造函数,
同时会自动生成一个对应的原型对象
实例化的时候,使用new,通过获取原型对象,从而继承构造函数的所有属性和方法