前言

Array、Boolean、Date、Number等对象都具有

toString()、toLocaleString()、valueOf()三个方法,那这三个方法有什么区别?

一、JS Array

1)举例

var array = new Array("niu","li","na");
console.log(array.valueOf());
console.log(array.toString());
console.log(array.toLocaleString());

2)结果



3)总结

valueOf:返回数组本身

toString():把数组转换为字符串,并返回结果,每一项以逗号分割。

toLocalString():把数组转换为本地数组,并返回结果。

二、JS Boolean

1)举例

var boolean = new Boolean();
console.log(boolean.valueOf());
console.log(boolean.toString());

2)结果

fasle,fasle

3)总结

valueOf:返回 Boolean 对象的原始值。

toString():根据原始布尔值或者 booleanObject 对象的值返回字符串 "true" 或 "false"。默认为"false"。

toLocalString():Boolean对象没有toLocalString()方法。但是在Boolean对象上使用这个方法也不会报错。

三、JS Date

1)举例

var date = new Date();
console.log(date.valueOf());
console.log(date.toString());
console.log(date.toLocaleString());

2)结果



3)总结

valueOf:返回 Date 对象的原始值,以毫秒表示。

toString():把 Date 对象转换为字符串,并返回结果。使用本地时间表示。

toLocalString():可根据本地时间把 Date 对象转换为字符串,并返回结果,返回的字符串根据本地规则格式化。

四、JS Math

1)举例

console.log(Math.PI.valueOf());

2)结果



3)总结

valueOf:返回 Math 对象的原始值。

五、JS Number

1)举例

var num = new Number(1337);
console.log(num.valueOf());
console.log(num.toString());
console.log(num.toLocaleString());

2)结果



3)总结

valueOf:返回一个 Number 对象的基本数字值。

toString():把数字转换为字符串,使用指定的基数。

toLocalString():把数字转换为字符串,使用本地数字格式顺序。

六、JS String

1)举例

var string = new String("abc");
console.log(string.valueOf());
console.log(string.toString());

2)结果

abc

abc

3)总结

valueOf:返回某个字符串对象的原始值。

toString():返回字符串。

七、toString() VS toLocalString()

  1. toLocalString()是调用每个数组元素的 toLocaleString() 方法,然后使用

    地区特定的分隔符把生成的字符串连接起来,形成一个字符串。
  2. toString()方法获取的是String(传统字符串),而toLocaleString()方法获取

    的是LocaleString(本地环境字符串)。
  3. 如果你开发的脚本在世界范围都有人使用,那么将对象转换成字符串时请使用

    toString()方法来完成。
  4. LocaleString()会根据你机器的本地环境来返回字符串,它和toString()返回的

    值在不同的本地环境下使用的符号会有微妙的变化。
  5. 所以使用toString()是保险的,返回唯一值的方法,它不会因为本地环境的改变而

    发生变化。如果是为了返回时间类型的数据,推荐使用LocaleString()。若是在后台

    处理字符串,请务必使用toString()。

JS中toString()、toLocaleString()、valueOf()的区别的更多相关文章

  1. js中toString和valueOf方法的区别

    toString 方法 返回对象的字符串表示形式. 语法:objectname.toString([radix]) objectname 必需.要为其搜索字符串表示形式的对象. radix 可选.为将 ...

  2. js 中 toString( ) 和valueOf( )

    1.toString()方法:主要用于Array.Boolean.Date.Error.Function.Number等对象转化为字符串形式.日期类的toString()方法返回一个可读的日期和字符串 ...

  3. 在javascript中toString 和valueOf的区别

    1.toString()方法:主要用于Array.Boolean.Date.Error.Function.Number等对象转化为字符串形式.日期类的toString()方法返回一个可读的日期和字符串 ...

  4. 区分javascript中的toString(),toLocaleString(),valueOf()方法

    首先我们随意创建一个对象,这很简单,打开FF浏览器的Firebug切换到控制台或者打开webkit浏览器的审查元素功能. 输入以下内容: var obj1=[1,2,3,4,5] var obj2=[ ...

  5. 浅谈JS中的!=、== 、!==、===的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的用法与区别? c#反射 抽象工厂

    浅谈JS中的!=.== .!==.===的用法和区别   var num = 1;     var str = '1';     var test = 1;     test == num  //tr ...

  6. JS中isPrototypeOf 和hasOwnProperty 的区别 ------- js使用in和hasOwnProperty获取对象属性的区别

    JS中isPrototypeOf 和hasOwnProperty 的区别 1.isPrototypeOf isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的 ...

  7. (网页)Angular.js 中 copy 赋值与 = 赋值 区别

    转自st.gg Angular.js 中 copy 赋值与 = 赋值 区别 为什么用 $scope.user = $scope.master; $scope.master 会跟着 $scope.use ...

  8. js中的substr和substring区别

    js中的substr和substring区别 Substring: 该方法可以有一个参数也可以有两个参数. (1)  一个参数: 示例: var str=“Olive”: str.substring( ...

  9. JS 中的require 和 import 区别整理

    ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引入模块,使 ...

  10. JS中 toString() & valueOf()

    数据的转换 所有对象继承了两个转换方法: 第一个是toString(),它的作用是返回一个反映这个对象的字符串 第二个是valueOf(),它的作用是返回它相应的原始值 toString() toSt ...

随机推荐

  1. Safari 中加载 Flash 使用overflow失效的bug

    在Flash标签中加入参数:wmode=transparent

  2. WC、KOI2017小随想..

    自从WC之后就一直想说些什么.. 嗯比较零碎.. Part A WC,我通过我的双眼看到了我想要的 嗯,就是在上面道出自己的想法.自己的思想 也是自己在十二月的迷茫后看到的曙光吧.. 感动.激动.难以 ...

  3. mysql找安装路经,更改密码

    1:如果安装了mysql但是启动不了,可以到C:/Windows/System32的cmd.exe,用管理员身份打开,然后输入net strat mysql即可 2:忘记安装路经       sele ...

  4. windows配置java运行环境

    配置jdk环境    https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html 配置tomcat环境      https://j ...

  5. Jupyter Notebook 快捷键和技巧

    Jupyter Notebook 有两种键盘输入模式. 编辑模式,允许你往单元中键入代码或文本,这时的单元框线是绿色的. 命令模式,键盘输入运行程序命令:这时的单元框线是蓝色.       命令模式 ...

  6. Python直接控制鼠标键盘

    Python直接控制鼠标键盘 之前因为期末的原因已经很久没写博客了,今天博主发现一个好玩的模块PyAutoGUI,借助它可以使用Python脚本直接控制键盘鼠标,感觉可以解决很多无聊的机械运动.这里记 ...

  7. 和textrank4ZH代码一模一样的算法详细解读

    前不久做了有关自动文摘的学习,采用方法是TextRank算法,整理和大家分享. 一. 关于自动文摘 利用计算机将大量的文本进行处理,产生简洁.精炼内容的过程就是文本摘要,人们可通过阅读摘要来把握文本主 ...

  8. selenium3 文件系列之------读取properties文件

    一个eclipse工程会有很多配置文件,有的配置文件是写在properties里,也有写在xml文件里的.这个总结一下是自动化测试是如何读取properties文件. 一.准备config.prope ...

  9. [原创]Burp Suite web应用程序渗透测试神器

    [原创]Burp Suite web应用程序渗透测试神器 一 Burp Suite介绍 Burp Suite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描 ...

  10. new Random().Next(1, 100); 多线程同时执行结果很高概率相同,

    /// <summary> /// new Random().Next(1, 100); 多线程同时执行结果很高概率相同, /// 是用的当前时间为seed,时间相同结果相同 /// // ...