使用Object对象

课后整理 2020-12-20

JavaScript原生提供Object对象,其他所有对象都继承自Object对象,都是Object的实例。Object对象的原生方法分成两类:Object本身的方法与Object的实例方法。

Object对象本身的方法,也称为静态方法,就是直接定义在Object对象的方法。例如:

Object.print = function (o) { console.log(o) };

在上面代码中,print方法就是直接定义在Object对象上。

Object的实例方法,就是定义在Object原型对象Object.prototype上的方法。它可以被Object实例直接使用。例如:

Object.prototype.print = function () {
  console.log(this);
};
var obj = new Object();
obj.print() // Object

在上面代码中,Object.prototype定义了一个print方法,然后生成一个Object的实例obj。obj直接继承了Object.prototype的属性和方法,可以直接使用obj.print调用print方法。也就是说,obj对象的print方法实质上就是调用Object.prototype.print方法。

关于原型对象object.prototype的详细解释,请参考下一章内容。这里只要知道,凡是定义在Object.prototype对象上面的属性和方法,将被所有实例对象共享。

以下先介绍Object作为函数的用法,然后再介绍Object对象的原生方法,包括静态方法和实例方法两部分。