📜  获取对象的类 javascript (1)

📅  最后修改于: 2023-12-03 15:27:49.620000             🧑  作者: Mango

获取对象的类 JavaScript

在 JavaScript 中,可以使用 typeof 操作符来获取一个值的类型。但是当想要获取实例对象所属类的时候,就需要使用 Object.prototype.toString 方法。

使用 Object.prototype.toString 方法获取对象的类

Object.prototype.toString 方法能够返回一个对象的类型名称,格式为 [object Type],其中 Type 为对象的类型名称。

示例
const obj = new Date();

console.log(Object.prototype.toString.call(obj)); // [object Date]
注意

需要使用 call 或者 apply 方法来改变 Object.prototype.toString 的执行上下文,使其返回当前对象的类型名称。

实现一个获取对象的类的工具函数

以下是一个封装了 Object.prototype.toString 方法的获取对象类型名称的工具函数。

示例
function getClass(obj) {
  return Object.prototype.toString.call(obj).slice(8, -1);
}

const obj = new Date();
console.log(getClass(obj)); // Date
代码解释

通过调用 Object.prototype.toString.call(obj)方法,获得了形如 [object Type] 的字符串,然后使用 .slice(8, -1) 截取了字符串中的类型名称。最终得到了当前对象的类型名称。

兼容性

使用 Object.prototype.toString 方法可以兼容所有的 JavaScript 环境,包括浏览器和 Node.js 等 JavaScript 运行环境。

总结
  • 使用 Object.prototype.toString 方法能够获取一个对象的类型名称。
  • 可以通过自定义工具函数来封装获取对象类型名称的功能。