#知识点记录# __proto__ 是 [[Prototype]] 的因历史原因而留下来的 getter/setter。

请注意,__proto__ 与 [[Prototype]] 不一样。__proto__ 是 [[Prototype]] 的 getter/setter。属性 [[Prototype]] 是内部的而且是隐藏的,但是有很多设置它的方式,其中之一就是使用特殊的名字 __proto__。

__proto__ 的存在是历史的原因。在现代编程语言中,将其替换为函数 Object.getPrototypeOf/Object.setPrototypeOf 也能 get/set 原型。

并且呢,在现代编程中不推荐再使用 __proto__ 了,而应该使用现代方法进行替代,具体有哪些现代方法请见:zh.javascript.info
展开
评论