javascript 的六种数据类型:
- 数值 number
- 字符串 string
- 布尔值 boolean (true/false --真假)
- 未定义 undefined
- 空 null
- 函数 function
- number,string,boolean是原始类型数据,不能再细分;
- 对象是一个组合数据类型,是由多个原始类型数据组合而成;
- undefined和null 是特殊的数据类型;
object(对象)是最复杂的数据类型,它的三个子类型: 1. object(对象); 2. Array (数组); 3. function (函数);
判断数据类型的方法:typeof
var a = 123; var b = '123'; var c = false; function fn1() {} console.log(typeof a); //number console.log(typeof b); //string console.log(typeof c); //boolean console.log(typeof fn1); //function
typeof 可以用来判断数据类型(当不知道后台传过来的数据类型时,可以用typeof判断):
function fn1() { let v; if (type v === 'undefined') { console.log("aaaaaa") }} fn1()
**
布尔的使用
**
空数组([])和空对象({})对应的布尔值,都是true
布尔只有两个状态值
- 真 true
- 假 false
利用运算符返回布尔值(三种):
- 前置逻辑运算符:!(nat);
- 相等运算符:===(全等) ==(相等) !=(不等于)
- 比较运算符:> >= < <=
转换规则是除了下面六个值被转为false,其他值都视为true
- undefined - null - false - 0 - NaN - ""或''(空字符串)
if ('') { console.log('true') } //空的字符串 在if的表达式内部为false,不进入console.log打印 if ([]) { console.log('true') } //true if ({}) { console.log('true') } //true