数据类型
1、基本数据类型(简单数据类型)
- String字符串
- Number数字型
- Boolean布尔值 true false
布尔型和数字型相加的时候, true 的值为 1 ,false 的值为 0- undefined
undefined是未定义(未赋值)的变量- null null是赋值为空的变量
2、引用数据类型(复杂数据类型)
除了基本数据类型都是引用数据类型
- 数组 array [1,2,3,4]
- 对象 object {name:zhangsan,age:18,height:180}
- 函数 function(){}
数据类型检测
1、typeof
只能检测基本数据类型,如果是引用数据类型检测出来的都是object
2、 Object.prototype.toString.call()
精准检测
3、 isNaN()用来判断一个变量是否为非数字的类型,不是数值返回 true ,是数值返回 false
数据类型转换
1、转为字符串
- String(num)
- num.toString() 如果有参数,参数是数字m,代表num转成m进制数输出
- 拼接空字符串num + ' '
- num.toFixed(n) 参数n代表保留的n位小数
2、 转为数字型
- parseInt(string) 转为整数
- parseFloat(string) 转为小数
- Number(string)只要不是纯数字就是转为NaN
3、转为布尔值
- boolean() “ ”、0、NaN、null、undefined 只有这五个数据为false,其余转为布尔值是true
4、 隐式转换
字符串数字遇到算数和比较运算符时候会自动转换为数值计算- / * % > >= < <= == !=
5、json特殊字符串
- 因为后端使用的语言和前端不相同,所以当用到后端数据,数据会以字符串形式传输,也就是json数据
- json是特殊字符串,里面包裹的是数组或者对象
- JSON.parse(json字符串) json数据转为数组对象,后端数据先转为数组对象在操作
- JSON.stringify(数组/对象) 把数组对象转为json数据,方便传给后端