开发者社区> 木子昭> 正文

JS数据类型转换规则

简介: JS数据类型 基础类型 String Boolean Number Symbol Undefine Null(typeof(null) === "object") 复合类型: 对象 Object(Array, Json) 显示类型转换 ...
+关注继续查看

JS数据类型

基础类型

  • String
  • Boolean
  • Number
  • Symbol
  • Undefine
  • Null(typeof(null) === "object")

复合类型: 对象

  • Object(Array, Json)

显示类型转换

Number的原始类型转换规则

  • 数值转换后还是数值
  • 字符串如果可以解析为数值则为数值, 空字符串为0, 无法解析的字符串为NaN
  • 布尔转数值, true转为1, false转为0
  • null转换为0
原始类型转换Number

Number的对象类型转换规则

传入实例M, 先调用M的valueOf(), 如果返回值V为基本数据类型, 则直接使用Number(V), 求最终返回值
如果T不属于基本数据类型, 则调用M的toString(), 如果返回值S为基本数据类型, 则直接使用Number(S),求最后的结果, 如果S不属于基本数据类型, 则直接返回NaN

对象类型转换1

对象类型转换2

String的原始类型转换规则

  • 数值(Number)转为相应的字符串
  • 字符串(String) 转换后还是字符串
  • 布尔值(Boolean)转换规则: true => 'true', false=> 'false'
  • undefine 转换为"undefine"
  • null 转换为'null'
String原始类型转换

String 的对象类型转换规则

与Number的对象转换规则类似, 区别是: 先调用对象的toString(), 然后再调用valueOf()
其实正常情况下, 对象调用自身的toString()后, 对象就可以转换为string基本类型, valueOf() 没有机会被调用, 但万事有个例, 如果我们重新定义了对象的toString()方法,使其返回非基本类型的值, 那样就有机会调用对象的valueOf()方法了

String对象类型转换规则

Boolean的原始类型转换 和 对象类型转换

undefined,null,NaN,'',-0,+0皆为false, 其余为true

隐式类型转换

四则运算+, -, *, /

隐式类型转换之四则运算

判断语句 if()

Native调用 console.log(), alert()

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
想了解JS数据类型转换吗?不用找了,这里都有
但是有一点就是复杂类型数据和基本数据类型进行比较的时候,都是先调用valueOf(),如果返回的值为基本数据类型,进行比较,如果不是基本数据类型,继续调用该复杂类型的toString()。
18 0
现代 JavaScript 原始数据类型转换你学会了吗?
现代 JavaScript 原始数据类型转换你学会了吗?
33 0
JavaScript入门第七章(数据类型转换 )
JavaScript入门第七章(数据类型转换 )
57 0
js数据类型转换,js作用域,js创建对象的三种方式
js数据类型转换,js作用域,js创建对象的三种方式
48 0
『JavaScript』数据类型转换和运算符
parseInt() 方法 使用 parseInt() 方法,参数为字符串,结果为该字符串转换而来的整数; 转化规则是:如果字符串的首字符不是一个数字,转换失败,返回 NaN;否则,转换到字符串中第一个不是数字的字符止,即,遇到字母、小数点下划线等字符立即停止转换。需要注意的是,16 进制的符号 0x 不会让转换停止。parseInt() 还可以有第二个参数,表示待转换字符串的进制。下面给一些例子:
93 0
JavaScript——JavaScript数据类型转换
JavaScript——JavaScript数据类型转换
45 0
Js 数据类型转换的几种方式
Js 数据类型转换的几种方式
49 0
玩转JS基础——数据类型转换
JavaScript 是一种动态类型语言,变量没有类型限制,可以随时赋予任意值。
47 0
细读 JS |(隐式)数据类型转换详解
细读 JS |(隐式)数据类型转换详解
111 0
JavaScript 基本数据类型转换
数据类型转换是我们在前端开发中经常遇到的场景,一般而言,在 JavaScript 中类型转换有三种情况
58 0
+关注
木子昭
# 专注极客体验 # 享受效率生活 --- 让程序去做呗~ 程序又不会累~
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
在 IoT 设备进行 JavaScript 开发的探索之路
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关实验场景
更多