当前位置: 首页 > 知识库问答 >
问题:

为什么Object.[[Prototype]]在Chrome开发者工具中不起作用?

查宜修
2023-03-14

我试图使用本教程从Mozilla(https://developer.Mozilla.org/en-us/docs/web/javascript/inheritance_and_the_prototype_chain)调用对象的[[Prototype]]方法,但似乎不起作用。

有人知道为什么吗?

谢谢,

一些代码:

function Graph() {
  this.vertices = [];
  this.edges = [];
}

Graph.prototype = {
  addVertex: function(v) {
    this.vertices.push(v);
  }
};

var g = new Graph();
g.[[Prototype]];

共有1个答案

方宏富
2023-03-14

因为您试图以错误的方式访问原型,所以它应该是g.__proto__(但是永远不要使用g.__proto__,它是不推荐的,并且不适用于所有对象)或object.getprototypeof(g):

function Graph() {
  this.vertices = [];
  this.edges = [];
}

Graph.prototype = {
  addVertex: function(v) {
    this.vertices.push(v);
  }
};

var g = new Graph();
console.log(g.__proto__); // get access to prototype
console.log(Object.getPrototypeOf(g)); // get access to prototype
 类似资料: