在JavaScript中共有六种数据类型,其中有五种是基本数据类型,还有一种则是引用数据类型。五种基本数据类型分别是:Number 数值类型、String 字符串类型、Boolean 布尔类型, null 空类型、以及undefined 未定义类型,下面就开始详细介绍它们之间的转换以及转换过程当中的注意点。编程
1.1.一、经过Number(常量/变量)编程语言
1.1.二、经过parseInt(须要转换的字符串)/parseFloat(须要转换的字符串)函数
1.1.2.一、parseInt/parseFloat都会从左至右的提取数值, 一旦遇到非数值就会当即中止,spa
中止的时候如何尚未提取到数值, 那么就返回NaNip
1.1.三、经过 ’+’ / ’-’ 来转换字符串
1.1.3.一、虽然经过+/-均可以将其它类型转换为数值类型, 可是-会改变数值的正负性;博客
1.1.3.二、+/-底层本质上就是调用了Number函数变量
1.2.一、将字符串类型转换为数值类型数据类型
1.2.1.一、若是字符串都是数值,那么就正常转换引用
1.2.1.二、若是字符串是一个空串,例如 ”” (什么都没有存)或者是 ” ” ( 仅仅存储了空格),那么转换以后就是0
1.2.1.三、若是字符串中既包含数字还包含字母,例如 ”abc123”,那么转换以后就是NaN
1.2.二、将布尔类型转换为数值类型
1.2.2.一、true转换为1
1.2.2.二、false转换为0
1.2.三、将空类型转换为数值类型
1.2.3.一、null转换为0
1.2.四、将未定义类型转换为数值类型
1.2.4.一、undefined转换为NaN
2.1.一、对于数值类型和布尔类型来讲,能够经过变量名称.toString()的方式来转换
2.1.二、能够经过String(常量/变量);
2.1.三、还能够经过 变量/常量 + ""/’’ 来转换为字符串
2.2.一、经过变量名称.toString()的方式来转换是对拷贝的数据进行转换, 并不会影响到原有的数据
2.2.二、不能使用常量直接调用toString方法, 由于常量是不能改变的
2.2.三、String(常量or变量), 因为是根据传入的值从新生成一个新的值, 并非修改原有的值
2.2.四、将undefined未定义类型经过String()的方式转换为字符串类型,转换以后仍是undefined
2.2.五、将null空类型经过String()的方式转换为字符串类型,转换以后仍是null
2.2.六、经过 变量/常量 + ""/’’ 来转换为字符串,底层的本质其实就是调用String()函数
3.2.一、将字符串类型转换为布尔类型只要字符串中有内容都会转换为true, 只有字符串中没有内容才会转换为false
3.2.二、将数值类型转换为布尔类型只有数值是0才会转换为false, 其它的都会转换为true若是是NaN也会转换为false
3.2.三、将undefined类型转换为布尔类型undefined会转换为false
2.2.四、将null类型转换为布尔类型会转换为false
2.2.五、在JavaScript中NaN属于Number类型
2.2.六、空字符串/0/NaN/undefined/null 会转换成false, 其它的都是true
JavaScript与其它的编程语言的数据类型之间的转换相似,虽然它不像C语言那样将数据类型分的那么清楚,例如JavaScript中的数值类型就包含了C中的整型、单精度/双精度浮点型等等。可是,在JavaScript中,不一样数据类型之间的转换和C语言中不一样数据类型之间的转换仍是相似的,转换类型都分为两种,一种是自动转换,另外一种是强制转换,只不过JavaScript中新增了一些转换的方法。
这也是我第一次写博客,写的很差的地方还请多多包涵,有错误的地方还请指正。