JavaScript toString方法

JavaScript toString方法教程

JavaScript 中,Object.toString 方法用来返回一个表示该 对象字符串

JavaScript toString详解

语法

obj.toString();

参数

参数 描述
obj 要转换的对象。

返回值

一个表示该对象的字符串。

说明

每个对象都有一个 toString() 方法,当该对象被表示为一个文本值时,或者一个对象以预期的字符串方式引用时自动调用。

默认情况下,toString() 方法被每个 Object 对象 继承。如果此方法在自定义对象中未被覆盖,toString() 返回 “[object type]”,其中 type 是对象的类型。

描述

可以自定义一个方法,来取代默认的 toString() 方法。该 toString() 方法不能传入 参数,并且必须返回一个字符串。自定义的 toString() 方法可以是任何我们需要的值,但如果它附带有关对象的信息,它将变得非常有用。

案例

Object.toString输出对象字符串

使用 Object.toString 输出对象字符串

<!DOCTYPE html> <html> <head> <title>JavaScript Object.toString输出对象字符串</title> <script type="text/javascript"> console.log("嗨客网(www.haicoder.net)"); function createPerson(name, age, sex){ var person = new Object(); person.name = name; person.age = age; person.sex = sex; person.sayHi = function(){ console.log("I am", this.name, "i am", this.age, "years old", "and my sex is", this.sex); } return person; } var person = createPerson("HaiCoder", 109, "F"); console.log("Person toString =", person.toString()); </script> </head> </html>

程序运行后,控制台输出如下:

21_JavaScript Object toString.png

我们直接调用对象的 toString 方法,可以输出一个对象的字符串形式。

重写对象Object.toString方法

我们可以重写 Object.toString 方法,输出对象信息

<!DOCTYPE html> <html> <head> <title>JavaScript 重写 Object.toString 方法</title> <script type="text/javascript"> console.log("嗨客网(www.haicoder.net)"); function createPerson(name, age, sex){ var person = new Object(); person.name = name; person.age = age; person.sex = sex; person.toString = function(){ return "Person toString, I am " + this.name + " i am " + this.age + " years old " + " and my sex is " + this.sex; } return person; } var person = createPerson("HaiCoder", 109, "F"); console.log(person.toString()); </script> </head> </html>

程序运行后,控制台输出如下:

22_JavaScript Object toString.png

我们使用 createPerson 方法,创建了了一个对象,同时,我们重写了该对象的 toString 方法,其中 toString 方法不接受任何参数,但是返回一个字符串类型的数据。

最后,我们使用 person 对象调用其 toString 方法,并打印。

JavaScript toString方法总结

在 JavaScript 中,Object.toString 方法用来返回一个表示该对象的字符串。