js数据类型转换

前言

只要你做过项目,肯定涉及到了数据类型转换.
数据类型转换大致分为3个类型:
转化为布尔值
转化为字符串
转化为数字
我们从这3个类型结合项目经常使用的点去讲解

布尔值

== === Boolean && ||

Boolean

Boolean(x),当x的内容是null,undefined,NaN,0,false,''时转化为false,其余类型转化为true

==

比较返回的是布尔值,但是会先对两边的数据进行转化,转化为同一类型的数据进行比较,在决定返回false还是true.
实际开发中我们常用的比较都类似1==‘1’这种基本类型比较,或者是对象类型比较,对象类型因为引用地址不同,结果为false

===

===比较返回的是布尔值,并且两边的数据不进行转化,直接比较

&&

a&&b实际上也会进行布尔转化去判断是否执行后面的内容
a为ture会执行b的计算并返回b,a为false不会执行b的计算并返回a的内容

||

a || b会进行布尔转化去判断是否执行b和要返回的内容
a为ture不会执行b的计算并返回a
a为false会执行b,并返回b

字符串

  • String toString

+

项目开发中经常遇到基本数据类型++'字符串'

var a={
      b:1
}
a.b+'1'//'11'

String

let a=new String(1)//比较少用
let a='1'//用得多

toString()

对象类型转化为基本类型用的多

var arr=[1,2,3];
arr.toString()//'1,2,3'

数字

Number 除了+外的运算符 parseInt() parseFloat()

运算符

除了+外的运算只要一方是数字就会转化为数字
项目中经常用到

var a='11'
a-0;//转化为数字

Number

转换的内容包含非数字的时候,Number() 会返回NaN(Not a Number)

parseInt

parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分,如果以非数字开头,则返回NaN

parseFloat()

parseFloat() 只解析十进制,返回能够组成合法数字的连贯的内容

posted @ 2019-11-18 22:41  大笛子  阅读(115)  评论(0编辑  收藏  举报