、、、、、、、、、、、仅对以前所学做复习记录使用、、、、、、、、、
1、原型对象作用:减少构造函数造成的内存资源的浪费和全局变量污染
2、每个构造函数(普通函数)都有一个显式原型叫prototype;还有一个隐式原型叫__proto__;
包含:Function、Array、Object、Date、RegExp,Boolean等这些都属于系统自带的构造函数
3、每个实例对象和原型对象还有(JSON和Math类)只有一个隐式原型__proto__
let a = { } 其实是 let a = new Object() 的语法糖
let a = [ ] 其实是 let a = new Array() 的语法糖
显式原型prototype是函数独有的(仅指向自身的原型对象),对象(包含函数)都有一个隐式原型__proto__(仅指向父级的原型对象)
显示原型都指向函数自身原型对象;
隐式原型都指向父级的原型对象;
function fn(name){
this.name=name
}
let obj1=new fn('发财')
创建fn函数的瞬间,编译器会自动另外生成一个对象叫prototype原型对象;而这个prototype原型对象有个construstor构造器指向fn函数。
创建实例对象obj1,会自带一个隐式原型__proto__ ;并且指向fn的原型对象(每个对象都有一个__proto__隐式原型)