2021-4-19 学习笔记

原型和原型链

原型(prototype)
prototype属性:每个函数就是一个prototype属性,他默认指向一个Object空对象,也就是原型对象。原型对象中有一个属性constructor骂他指向函数对象。
原型对象添加属性(方法):函数的所有实例对选哪个自动拥有原型中的属性。
显示原型和隐式原型
每个函数function都有一个prototype即显示原型,而实例原型的值都有一个_proto_就是隐式函数。对象的隐式原型的值为其对应构造函数的显示原型的值。
内存结构图:
2021-4-19 学习笔记
原型链
在访问一个对象的属性时,先在起自身属性中查找,找到返回,如果没有,再沿着_proto_这个链向上查找,找到返回,若最后没有找到就返回undefined。
原型链图解:
2021-4-19 学习笔记

instanceof
instanceof是如何判断?
表达式:A instanceof B
如果B函数的显示原型对象在A对选哪个的原型链上,返回true否则返回false。
实例
function Foo(){}
var f1 = new Foo();
console.log(f1 instanceof Foo);
console.log( f1 instanceof Object);
2021-4-19 学习笔记

上一篇:instanceof关键字


下一篇:【Java基础】-- instanceof 用法详解