js原型
//创建构造函数Fn,每个函数都有一个prototype属性
function Fn(){
}
Fn.prototype.name="f"
//构造函数创建实例对象,会继承原型的属性
var fn=new Fn()
console.log(fn) //name:'f'
//每个实例对象都有一个__proto__属性,这个属性指向构造函数的原型
console.log(fn.__proto__===Fn.prototype) //true
console.log(Object.getPrototypeOf(fn)===Fn.prototype)//true(es5获取对象原型的方法)
//原型都有一个constructor属性指向构造函数
console.log(Fn===Fn.prototype.constructor) //true
//实例和原型
console.log(fn.name) //原型name值为f
fn.name="f1"
console.log(fn.name)//实例name值为f1
delete fn.name
console.log(fn.name) //原型name值为f