📅  最后修改于: 2023-12-03 15:01:38.359000             🧑  作者: Mango
Object.prototype.toString()
是 JavaScript 中用于返回一个对象的字符串表示的方法。它返回一个由对象的类型以及其他附加信息组成的字符串。
obj.toString()
toString()
方法返回一个表示对象的字符串。
Object.prototype.toString()
方法通常由内置对象调用,不过也可以被自定义对象调用。当该方法被调用时,它会按照以下规则返回一个表示对象类型的字符串:
对于内置对象,例如 Array
、Date
、RegExp
,toString()
方法会返回相应对象的字符串表示。
对于自定义对象,toString()
方法默认返回 "[object Object]"
。但是,我们可以在自定义对象中重写 toString()
方法,以便返回自定义的字符串表示。
var arr = [1, 2, 3];
var date = new Date();
var regExp = /\w+/;
console.log(arr.toString()); // 输出: "1,2,3"
console.log(date.toString()); // 输出: "Sat May 01 2021 14:35:27 GMT+0530 (印度标准时间)"
console.log(regExp.toString()); // 输出: "/\w+/"
function Person(name, age) {
this.name = name;
this.age = age;
}
Person.prototype.toString = function() {
return `Person { name: ${this.name}, age: ${this.age} }`;
};
var person = new Person("Alice", 25);
console.log(person.toString()); // 输出: "Person { name: Alice, age: 25 }"
console.log(person + ""); // 输出: "Person { name: Alice, age: 25 }"
Object.prototype.toString()
方法经常被用于检测变量的类型。可以使用该方法来判断变量是否为数组、日期、正则表达式等特定类型。
如果想要获取更具体的对象类型,可以使用 Object.prototype.constructor.name
属性。