JS中toString()和toLocalString()的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS中toString()和toLocalString()的区别相关的知识,希望对你有一定的参考价值。

在JAVA中是否也有同样的区别

我来解释下java中的吧 toLocaleString是作为一个String类型 返回Date 比如
String day = new Date().toLocaleString();
而toString()方法 在很多地方都被覆盖过 比如Integer有toString方法,BufferedString也有此方法 具体有什么作用是依据不同的类来看了
参考技术A toLocaleString 方法返回一个 String 对象,这个对象中包含了用当前区域设置的默认格式表示的日期。

对于公元 1601 和 1999 之间的时间,日期格式要按照用户的“控制面板”中“区域设置”来确定。
F对于此区间外的其他时间,使用 toString 方法的默认格式。
例如,同样是 3 月 21 日,在美国,toLocaleString 可能会返回 "03/21/08 01:02:03",而在欧洲,返回值则可能是 "21/03/08 01:02:03",因为欧洲的惯例是将日期放在月份前面。

toLocaleString 只是用来显示结果给用户;最好不要在脚本中用来做基本计算,因为返回的结果是随机器不同而不同的。

示例
下面这个例子说明了 toLocaleString 方法的用法。

var d, s; // 声明变量。
d = new Date(); // 创建 Date 对象。
s = "Current setting is ";
s += d.toLocaleString(); // 转换为当前区域。
return(s); // 返回转换的日期。

js中的toString和valueOf

数据的转换

基本上,所有JS数据类型都拥有valueOf和toString这两个方法,null除外。它们俩解决javascript值运算与显示的问题

所有对象继承了两个转换方法:

第一个是toString(),它的作用是返回一个反映这个对象的字符串

第二个是valueOf(),它的作用是返回它相应的原始值

 

每个JavaScript固有对象的 valueOf 方法定义不同。

1.valueOf() 方法可返回 Number 对象的原始值

<script type="text/javascript"> 
var boo = new Number(20)     //Array、Object、Boolean、Number、String、Date、Function
document.write(boo.valueOf());    //20
</script> 

 

Math 和 Error 对象没有 valueOf 方法。

 

2.toString() 方法可把一个逻辑值转换为字符串,并返回结果。

<script type="text/javascript"> 
var boo = new Number(2); //Array、Object、Boolean、Number、String、Date、Function
document.write(boo.toString());  //2
</script>

 

以上是关于JS中toString()和toLocalString()的区别的主要内容,如果未能解决你的问题,请参考以下文章

js中toLocalString()toString()和valueOf()方法

JS中String()和toString()

JS中toString()和toLocalString()的区别

js中的object对象toString和valueOf的区别

JS之toString方法

JS中的toString()和valueOf()方法