- 主要的概念有这么几个:
_proto_(隐式原型),prototype(显式原型),constructor(构造器),原型对象,原型函数。 - 需要提前说明一下几个概念:(摘要自 https://blog.csdn.net/yucihent/article/details/79424506)
所有引用类型(函数,数组,对象)都拥有隐式原型属性。
所有函数拥有prototype属性(显式原型)(仅限函数)
原型对象:拥有prototype属性的对象,在定义函数时就被创建 - 原型链图解:(图片来自百度图片)
基于此图,进行对各种类型的场景进行说明(使用 Chrome版本 74.0.3724.8(正式版本) (32 位)):
a. var obj = {};
b. var obj = new Date();
c. var obj = new Object();
d. var fn = function(){}; 特别注意prototype指针指向。
e. var Fn = function(){}; var obj = new Fn();
f.var fn = new Function(){};
JS原型链记录笔记
最新推荐文章于 2024-09-25 19:28:26 发布