检查数据类型:
typeof (typeof 变量名)
typeof对于一些类型的处理只返回了处于其原型链最顶端的object类型。
引用类型除了function返回function类型之外,其他都返回object。
○ NaN的数据类型是number
○ 数组(Array)和日期Date的数据类型是object
○ 不能检测出null,检测null的数据类型是object
1、转换成字符串类型
变量名.toString()
注意:null和undefined这两个值没有toString的方法
原值不改变
String(变量名)
隐式转换: 用 + 拼接字符串
例: 1 + ' '
1、字符串的隐式转换 变量+''
num = num + "";
2、toString
var num1 = num.toString();
3、String()
num = String(num);
2、转换成数字类型
parselnt(变量名) : 取有效整数, parseFloat(变量名) :取有效浮点数 , Number(变量名)
调用Number(变量)函数
1:如果是纯数字的字符串,则直接将其转换为数字
2:如果字符串中有非法的数字的内容,则转换为NaN
3:如果字符串是一个空串,或者全是空格的字符串,则转换为0
注意:如果对非String使用parseFloat()跟parseInt(),它会先将其转换为String,然后再操作
不能用parseInt()去转换boolean
隐式转换 : 利用运算符 ( - * / )转换 例: “12” - 0
1、Number()转换
b = Number('123')
2、 parseInt(变量) 取有效整数
num = parseInt('123')
3、parseFloat() 取有效浮点数
num = parseFloat('13.14')
4、算术运算 - * / 隐式转换
num = '123'- 0
flag = '123' * 1
a= '123' /1
3、转换为布尔类型
注:代表空、否定的会被转换为false 例如:0、NaN、null、undefined , 其余值都会被转换为true
Boolean(变量名)
数字-->布尔 除了0跟NaN是false,其他的都是true
字符串-->布尔 除了空串是false,其余都是true,包括空格
null和undefined都会转换为false
对象也会转换为true
可以用双重取反转换 例:!!变量名
方式一、 Boolean(变量)函数转布尔值
flat = Boolean(123)
方式二、双重取反转换 !!变量名
var a = 1
flat = !!a