Javascript学习笔记——6.10 对象方法

toString()

返回对象值的字符串。

一般对象默认的toString方法返回值信息量很少,所以很多类都自定义toString方法。

var p = {name:'Mike',age:22}
console.log(p.toString()) //[Object Object]

toLocaleString()

返回对象的本地化字符串。

Date Number对toLocaleString()方法做了定制,可以用它对数字、日期和时间做本地化转换。Object默认的toLocaleString只是简单的返回toString的值。

Array类的toLocaleString()会把每个数组元素调用toLocaleString()转换为字符串。

toJSON()

Object.prototype实际上没有定义toJSON()方法,但通过JSON.Stringify()会优先调用toJSON方法,如果没有再调用系统默认。

var p = {name:'Mike',age:22}
p.toJSON() // 报错 Uncaught TypeError: p.toJson is not a function
JSON.stringify(p) //"{"name":"Mike","age":22}"
p.toJSON = function (){ return '{"姓名":"Mike","年龄":"22岁"}'}
JSON.stringify(p) //  "{"姓名":"Mike","年龄":"22岁"}"

valueOf()

转换为原始值,和toString()类似,一般javascript会在需要将对象转换为原始值尤其是数字的时候,才调用它。

有些内置对象比如Date自定义了Valueof()方法。

你可能感兴趣的:(Javascript学习笔记——6.10 对象方法)