显式原型与隐式原型和instanceof - js函数高级

显式原型

  • 每个函数(function)都有一个prototype,即显式原型(属性)

  • 默认指向一个空Object对象

隐式原型

  • 每个实例对象都有一个__proto__, 可称为隐式原型

对象的隐式原型 (proto) 的值为其对应构造函数的显式原型 ( prototype )

总结

  • 函数的prototype属性:在“定义函数”时自动添加的,默认值为一个Object对象

  • 对象的__proto__属性:“创建对象”时自动添加,默认值为“构造函数”的prototype属性值

  • 能直接操作显示原型,但不能直接操作隐式原型(ES6前)

instanceof

  • 表达式:A instanceof B

  • 如果B函数的显示原型对象在A对象的原型链上,返回true,否则返回false

posted @ 2021-07-20 18:09  独舟者  阅读(112)  评论(0)    收藏  举报