toString与toLocaleString在不同数据类型下输出的差异

Object对象存在两个转化为字符串的方法,一个是常用的toString,另一个则是toLocaleString。接下来通过示例来展示各种不同数据类型下的输出差异
注:基本数据类型在调用toStringtoLocaleString时,会首先将基本数据类型实例化为对应的对象类型。比如var x = 'abc';,示例中x并不是对象类型,但是在调用时,会首先通过new String()将文本实例化为String包装类型

对象


效果相同,调用的是原始的Object.toString()方法

字符串


效果相同,因其本身就是字符串

数字


toString将数字转换为字符串,toLocaleString在转换为字符串的同时,使用三位分节法进行显示

需要注意的是number数字类型下这两个方法都是可传入参数的,如下图所示:

toString中传入的参数表示需要转换的进制,而toLocaleString具体参数可查考:MDN

浮点数


toString将浮点数转换为字符串,toLocaleString在转换为字符串的同时,只保留了小数点后三位数,并进行了四舍五入

函数


效果相同,将函数直接转化为字符串

数组


效果相同,将数组转化为以,分隔的字符串,与join(',')相同

布尔值


效果相同,都是将布尔值转化为字符串

日期


toString转换为以国际化日期显示格式的字符串,toLocaleString转换为以本地日期显示格式的字符串

如果您觉得我的文章对您有用,请随意打赏。

您的支持将鼓励我继续创作!

¥ 打赏支持

文章导航

目录

×
  1. 1. 对象
  2. 2. 字符串
  3. 3. 数字
  4. 4. 浮点数
  5. 5. 函数
  6. 6. 数组
  7. 7. 布尔值
  8. 8. 日期