数据类型转换
- 首先,数据类型一共有6种,分别是字符串、布尔值、数值、空值、未定义和对象。
其中基本数据类型:
1、number数值类型:在JS中所有的数值都是Number类型,包括了整数、浮点数(小数)
- 拓展部分:如果使用Number表示的数字超过了最大值,则会返回一个
Infinity 表示正无穷大
-Infinity 表示负无穷大
使用typeof检查Infinity也会返回Number2、
2、string字符串类型:在JS中字符串需要使用引号引起来
- 使用单引号或双引号都可以,但是最好不要混用
- 注意引号的嵌套问题,
3、Boolean布尔类型:布尔值只有2个,主要用来做逻辑判断
- true 表示真
- false 表示假
4、Undefined未定义类型:Undefined(未定义)的值只有一个,undefined
- 声明一个变量但是未给变量赋值时,它的值就是undefined
- 一般用于两个数据进行叠加时的过度
5、null类型:表示空对象,如果定义的变量将来准备保存对象,可以将变量初始化为null,在页面上获取不到对象,返回的值就是null。
引用数据类型
6、object,对象类型 数组对象
二、由于不同的数据类型无法直接进行相互之间的运算,所以往往需要先将他们转化为同一种数据类型,而数据类型之间的转换主要指,将其他的数据类型转换为String、Number、Boolean。
一、将其他的数据类型转换为String类型
方法一:
// Number Boolean
- 调用被转换数据类型的toString()方法
- 该方法不会影响原变量,它会将转换的结果返回
- 注意:null和undefined这两个值没有toString()方法,如果调用该方法程序会报错
方法二:
- 调用String()函数,并将被转换的数据作为参数传递给函数
- 使用String()函数做强制类型转换时,
对于Number Boolean实际上是调用的toString()方法
但是对于null和undefined,就不会调用toString()方法
它会将null直接转换为"null"(字符串)
它会将undefined直接转换为"undefined"(字符串)
二、将其他类型转换为Number
使用Number()函数
- 字符串-->数字
1.如果是纯数字的字符串,则可以直接转换为数字
2.如果字符串中有非数字的内容,则转换为NaN
3.如果字符串是一个空串或者是一个全是空格的字符串,则转换为0
- 布尔值-->数字
true准换为1 false转换为0
- null-->数字 0
- undefined-->数字 NaN
第二种方式:
- 这种方式专门用来对付字符串类型
- parseInt() 把一个字符串转换为一个整数
- parseFloat() 把一个字符串转换为一个浮点数
parseInt()可以将一个字符串中的有效整数内容取出来然后转换为Number
parseFloat()与parseInt()类似,但是不同的是它可以获取有效的小数
三、将其他类型转换为Boolean
- 使用Boolean()函数
- 数字 -->布尔 除了0和NaN是false,其余的全部都是true
- 字符串-->布尔 除了空串是false,其余的全部都是true
- null 和undefined都会转换为false
- 对象也会转换为true