JS的运算符以及某些内置函数,会自动进行数据类型的转换,方便计算,即隐式转换数据类型;

但是很多时候,我们希望可以手动控制数据类型的转换,即显示转换数据类型;

转换为字符串

String()函数

使用String(value)函数,将value转换为字符串类型;

toString()方法

也可以调用自带的toString()方法,转换为字符串类型;

但是,注意:

  • null和undefined没有toString()方法,调用会报错,此时只能用String()函数来转为字符串;

  • 无论是String()函数,还是toString方法;无论传入的是基础数据类型,还是对象,在调用他们的时候,都不会改变原本的变量的数据类型,而是新开辟一个内存,将原本的变量的值,转换为字符串类型以后再存储进新开的内存里,然后返回这个新开的内存的地址;

    所以我们需要用变量去接收这个返回值,如下图所示:

转换为数值

Number()函数

使用Number(value)函数,将value转换为数值类型;

非数值转换为数字的转换规则如下:

  • null = 0
  • undefined = NaN
  • true = 1
  • false = 0
  • 字符串:先去掉首尾空白字符(空格,换行符,制表符等),然后
    • 空串 = 0
    • 数字字符串转为数字,如"1234" = 1234
    • 含非数字的字符串,转为NaN,如"1234hello" = NaN

parseInt()函数 与 parseFloat()函数

还有两个专门针对字符串转换为数字的函数,parseInt()parseFloat()

  • 顾名思义,parseInt()解析为整数,parseFloat()解析为浮点数;

  • 注意,他们传入的参数必须是字符串或者数字,除此以外的其他数据类型,都会返回NaN;

  • parseInt()为例,来说明一下他们解析字符串的顺序:

    • 先去掉首尾空白字符
    • 再按照顺序依次读取每一个字符
    • 读到非数字字符,直接返回NaN;否则读完,返回数字,如下图所示:

转换为布尔值

Boolean()函数

使用Boolean(value)函数,将value转换为布尔值;

转换为布尔值的转换规则如下:

  • 表示”无“的概念的值,都转换为false,具体有:0、空字符串、null、undefined、NaN

  • 除此以外的其他值,都转换为true

最新文章

  1. GIS部分理论知识备忘随笔
  2. 【十大经典数据挖掘算法】Naïve Bayes
  3. JustWe-WebServer Android上的Http服务器
  4. vs2010 sql server 2008数据库管理界面安装
  5. NLS_LANG
  6. Hibernate.initialize(Obj)用法
  7. Win7\xp添加虚拟网Microsoft Loopback Adapter
  8. 移动互联网实战--Apple的APNS桩推送服务的实现(1)
  9. contentType,pageEncoding,charset,setCharacterEncoding
  10. 在SharePoint 2010中创建网站的权限级别
  11. java之表达式陷阱
  12. Asp服务器控件(HyperLink、Button) 绑定后台参数 DataBinder.Eval
  13. springBoot学习
  14. 【前端基础】动态脚本与JSONP
  15. coolSQL安装与使用
  16. linux批量配置ip
  17. json&pickle模块
  18. Windows10中的IIS10.0安装php manager和IIS URL 重写2.0组件的方法
  19. Jenkins部署Python项目实战
  20. 实现textview竖排文字效果

热门文章

  1. Jupyter Notebook单元格加宽的方法3种
  2. 【疫情动态条形图】用Python开发全球疫情排名动态条形图bar_chart_race
  3. SQL语句——为什么分组函数(多行处理函数)不能用在where语句之后?
  4. 华为 Quidway S3700-28TP-SI-AC Routing Switch 配置时间(ntp)
  5. day45-JDBC和连接池01
  6. jmeter中获取token和cookie
  7. 5.httprunner-hook机制
  8. 完全背包问题 —— 贪心优化 DP 范围
  9. POC、EXP、SRC概念厘清
  10. UE优化性能