JavaScript中的数据类型转换方法小结


Posted in Javascript onOctober 26, 2015

JavaScript 变量可以转换为新变量或其他数据类型:

  • 通过使用 JavaScript 函数
  • 通过 JavaScript 自身自动转换

将数字转换为字符串

全局方法 String() 可以将数字转换为字符串。
该方法可用于任何类型的数字,字母,变量,表达式:
实例

String(x)     // 将变量 x 转换为字符串并返回
String(123)    // 将数字 123 转换为字符串并返回
String(100 + 23) // 将数字表达式转换为字符串并返回

Number 方法 toString() 也是有同样的效果。
实例

x.toString()
(123).toString()
(100 + 23).toString()

将布尔值转换为字符串

全局方法 String() 可以将布尔值转换为字符串。
String(false)    // 返回 "false"
String(true)     // 返回 "true"
Boolean 方法 toString() 也有相同的效果。
false.toString()   // 返回 "false"
true.toString()   // 返回 "true"

将日期转换为字符串
全局方法 String() 可以将日期转换为字符串。

String(Date())   // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)

Date 方法 toString() 也有相同的效果。
实例

Date().toString()  // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)

将字符串转换为数字
全局方法 Number() 可以将字符串转换为数字。
字符串包含数字(如 "3.14") 转换为数字 (如 3.14).
空字符串转换为 0。
其他的字符串会转换为 NaN (不是个数字)。

Number("3.14")  // 返回 3.14
Number(" ")    // 返回 0 
Number("")    // 返回 0
Number("99 88")  // 返回 NaN

一元运算符 +
Operator + 可用于将变量转换为数字:
实例

var y = "5";   // y 是一个字符串
var x = + y;   // x 是一个数字

如果变量不能转换,它仍然会是一个数字,但值为 NaN (不是一个数字):
实例

var y = "John";  // y 是一个字符串
var x = + y;   // x 是一个数字 (NaN)


将布尔值转换为数字
全局方法 Number() 可将布尔值转换为数字。

Number(false)   // 返回 0
Number(true)   // 返回 1

将日期转换为数字
全局方法 Date() 可将日期转换为数字。

d = new Date();
Number(d)     // 返回 1404568027739

日期方法 getTime() 也有相同的效果。

d = new Date();
d.getTime()    // 返回 1404568027739

自动转换类型 Type Conversion
当 JavaScript 尝试操作一个 "错误" 的数据类型时,会自动转换为 "正确" 的数据类型。
以下输出结果不是你所期望的:

5 + null  // 返回 5     because null is converted to 0
"5" + null // 返回"5null"  because null is converted to "null"
"5" + 1   // 返回 "51"   because 1 is converted to "1" 
"5" - 1   // 返回 4     because "5" is converted to 5

自动转换为字符串
当你尝试输出一个对象或一个变量时 JavaScript 会自动调用变量的 toString() 方法:

document.getElementById("demo").innerHTML = myVar;

// if myVar = {name:"Fjohn"} // toString 转换为 "[object Object]"
// if myVar = [1,2,3,4]    // toString 转换为 "1,2,3,4"
// if myVar = new Date()   // toString 转换为 "Fri Jul 18 2014 09:08:55 GMT+0200"

数字和布尔值也经常相互转换:

// if myVar = 123       // toString 转换为 "123"
// if myVar = true      // toString 转换为 "true"
// if myVar = false      // toString 转换为 "false"
Javascript 相关文章推荐
JavaScript中void(0)的具体含义解释
Feb 27 Javascript
用ASP将SQL搜索出来的内容导出为TXT的代码
Jul 27 Javascript
用js生产批量批处理执行命令
Jul 28 Javascript
jQuery遍历对象、数组、集合实例
Nov 08 Javascript
javascript创建函数的20种方式汇总
Jun 23 Javascript
AngularJS中的Directive自定义一个表格
Jan 25 Javascript
jQuery简单设置文本框回车事件的方法
Aug 01 Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
Dec 16 Javascript
vue项目webpack中Npm传递参数配置不同域名接口
Jun 15 Javascript
微信小程序仿RadioGroup改变样式的处理方案
Jul 13 Javascript
Vue高版本中一些新特性的使用详解
Sep 25 Javascript
vue 实现超长文本截取,悬浮框提示
Jul 29 Javascript
如何实现JavaScript动态加载CSS和JS文件
Dec 28 #Javascript
基于javascript实现漂亮的页面过渡动画效果附源码下载
Oct 26 #Javascript
JS实现的页面自定义滚动条效果
Oct 26 #Javascript
JS实现的鼠标跟随代码(卡通手型点击效果)
Oct 26 #Javascript
JS响应鼠标点击实现两个滑块区间拖动效果
Oct 26 #Javascript
javaScript实现可缩放的显示区效果代码
Oct 26 #Javascript
JS基于VML技术实现的五角星礼花效果代码
Oct 26 #Javascript
You might like
深入PHP变量存储的详解
2013/06/13 PHP
解析wamp5下虚拟机配置文档
2013/06/27 PHP
smarty中js的调用方法示例
2014/10/27 PHP
PIGCMS 如何关闭聊天机器人
2015/02/12 PHP
一个简单安全的PHP验证码类、PHP验证码
2016/09/24 PHP
Js 时间函数getYear()的使用问题探讨
2013/04/01 Javascript
jQuery中mouseover事件用法实例
2014/12/26 Javascript
JavaScript实现倒计时跳转页面功能【实用】
2016/12/13 Javascript
聊聊那些使用前端Javascript实现的机器学习类库
2017/09/18 Javascript
利用js给datalist或select动态添加option选项的方法
2018/01/25 Javascript
vue组件实践之可搜索下拉框功能
2018/11/25 Javascript
vue在路由中验证token是否存在的简单实现
2019/11/11 Javascript
详细介绍Python的鸭子类型
2016/09/12 Python
CentOS6.5设置Django开发环境
2016/10/13 Python
Python实现的桶排序算法示例
2017/11/29 Python
为什么选择python编程语言入门黑客攻防 给你几个理由!
2018/02/02 Python
python xlsxwriter库生成图表的应用示例
2018/03/16 Python
学生信息管理系统python版
2018/10/17 Python
Django数据库连接丢失问题的解决方法
2018/12/29 Python
基于python的selenium两种文件上传操作实现详解
2019/09/19 Python
Python如何实现强制数据类型转换
2019/11/22 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
2020/01/09 Python
css3实现六边形边框的实例代码
2019/05/24 HTML / CSS
伦敦哈德森鞋:Hudson Shoes
2018/02/06 全球购物
有机童装:Toby Tiger
2018/05/23 全球购物
中专三年学习的个人自我评价
2013/12/12 职场文书
4s店机修工岗位职责
2013/12/20 职场文书
文字自荐书范文
2014/02/10 职场文书
党风廉政建设责任书
2014/04/14 职场文书
三月学雷锋活动总结
2014/06/26 职场文书
商品陈列协议书
2014/09/29 职场文书
秋冬农业生产标语
2014/10/09 职场文书
2014年办公室人员工作总结
2014/12/09 职场文书
房地产公司财务总监岗位职责
2015/04/03 职场文书
golang 实现Location跳转方式
2021/05/02 Golang
nginx中proxy_pass各种用法详解
2021/11/07 Servers