一、数据类型
1、类型
基本(值)类型
- String:任意字符串
- Number:任意的数字
- boolean:true / false
- undefined:undefined
- null:null
对象(引用)类型
- Object:任意对象
- Function:一种特别的对象(可以执行)
- Array:一种特别的对象(数值下标,内部数据是有序的)
2、判断
- typeof (返回数据类型的字符串表达),不能判断:null与object、object与array
- instanceof:用来判断对象的具体类型
- ===:可以判断undefined、null
var a
console.log(a, typeof a) // undefined 'undefined'
console.log(undefined === 'undefined') // false
a = 3
console.log(typeof a === 'number') // true
a = null
console.log(typeof a, a === null) // 'object' true
// null是作为object类型的一个特殊值,后来成为了一个独立的类型
var b1 = {
b2: [1, 'abc', console.log],
b3: function () {
console.log('b3')
return function() {
return 'qq'
}
}
}
console.log(b1 instanceof Object, b1 instanceof Array) // true false
console.log(b1.b2 instanceof Array, b1.b2 instanceof Object) // true true
console.log(b1.b3 instanceof Function, b1.b3 instanceof Object) // true true
console.log(typeof b1.b2) // 'object'
console.log(typeof b1.b3 === 'function') // true
console.log(typeof b1.b2[2] === 'function') // true
b1.b2[2](4) // 4
console.log(b1.b3()()) // b3 qq