1、数据类型
- 特点:
- java、c、c#等,在声明变量时已经确定了数据类型
- javasc没有确定数据类型,在执行过程中会确定
- Number
- 八进制、十进制、十六进制在计算时最终被转换为十进制进行计算
- NaN: not a number
- isNa: is not a number
- String
- \ 反斜杠,转义
- str.length 获取长度
- 加号两个作用
- 加法和拼接字符串:数字+字符串结果为字符串(数字转为字符串后拼接)
- Boolean类型
- 值为true或false,区分大小写
- 计算机内存中1为true, 0为false
- Undefind 和 Null
- Undefind 一个没有赋值的变量
- null 表示为空
2、复杂数据类型
3、获取变量的类型
- typeof
- 变量在内存中是已经确定好的,用typeof获取数据类型
4、数据类型转换
- 转换为字符串:
- str.toString()
- String(str)
- null和undefind用String(str)转换为字符串,其它用str.toString()就可以
var a = null;
console.log(a.toString());//报错
console.log(String(a));//输出null
- 通过拼接来转为字符串:
- 数字加空字符串
- num +""
- 特例:console.log(typeof num +'') 结果为boolean (运算顺序从左到右,需要加()提高优先级)
- 转为数值类型:
- Number()
- Number('123') ----->NaN
- Number('123a') ---->NaN
- Number(true) ------>1
- parseInt() //parse 解析 int 整数
- 遇到数字转换,遇到非数字返回
- parseInt('123') --->123
- parseInt(true) --->NaN
- parseInt(’123aa‘)---->123
- parseInt(’aa123‘)---->NaN
- parseFloat()
- 取正数或负数
var str='123'
console.log(+str) ---->123
var str='123c'
console.log(+str) ---->NaN
var str='123'
console.log(str - 0) ---->123
var str='123c'
console.log(str - 0) ---->NaN
- 转为布尔类型:
- Boolean()出现false的五种情况(其余均为true):null undefind 空字符串 0 NaN