原型链的终点是什么?
参考答案:
原型链的终点是 Object.prototype。
在 JavaScript 中,所有对象的原型链最终都会归结到 Object.prototype,这是原型链的最后一个环节。
原型链的结构
对象实例:每个 JavaScript 对象都有一个内部属性
[[Prototype]](在代码中通过__proto__或Object.getPrototypeOf可以访问),这个属性指向该对象的原型。构造函数的原型:构造函数创建的对象实例的原型指向构造函数的
prototype对象。例如:javascriptfunction Person(name) { this.name = name; } const john = new Person('John');在这个例子中,
john的原型指向Person.prototype。Object.prototype:每个对象的原型链最终都会指向Object.prototype。这是 JavaScript 原型链的终点。Object.prototype是所有对象的共同祖先,它提供了所有对象共有的属性和方法,如toString,hasOwnProperty等。null:Object.prototype的[[Prototype]]是null,这是原型链的终点。null表示没有更多的原型链。
原型链的终点示例
javascript
const obj = {};
// 访问 obj 的原型
console.log(Object.getPrototypeOf(obj)); // 输出: {}
console.log(Object.getPrototypeOf(Object.getPrototypeOf(obj))); // 输出: null在上面的代码中,Object.getPrototypeOf(obj) 返回 Object.prototype,而 Object.getPrototypeOf(Object.prototype) 返回 null,标志着原型链的终点。
题目要点:
- 原型链的终点:
Object.prototype是原型链的终点,它的[[Prototype]]指向null。 Object.prototype:提供了所有对象共有的属性和方法。null:表示原型链的最末端,没有更多的原型链。