学科分类
目录
JavaScript网页编程

原型对象的原型对象

通过前面的学习可知,原型对象也是对象,那么这个对象应该也会有一个原型对象存在。为了确认原型对象有没有原型对象,可以用如下代码来测试。

 1  function Person() {}

 2  // 查看原型对象的原型对象

 3  console.log(Person.prototype.__proto__);

 4  // 查看原型对象的原型对象的构造函数

 5  console.log(Person.prototype.__proto__.constructor);

上述代码执行后,在控制台就会看到一个打印出来的对象,这个对象的构造函数是Object()。由此可见,Person.prototype.proto这个对象其实就是Object.prototype对象,这个对象是所有Object实例对象的原型对象,下面我们通过代码进行验证。

 1  function Person() {}

 2  console.log(Person.prototype.__proto__ === Object.prototype);  // true

 3  var obj = {};

 4  console.log(obj.__proto__ === Object.prototype);        // true

如果继续访问Object.prototype的原型对象,则结果为null,如下所示。

 1  console.log(Object.prototype.__proto__);  // 输出结果:null

由此可见,在JavaScript中,原型对象与原型对象是像链条一样连起来的,这个链条的尽头的对象就是Object.prototype。

点击此处
隐藏目录