前端开发过程中,需要判断当前变量的类型,以便于更好的开发项目。
1.typeof
typeof可以用来判断Number,Undefined,Symbol,Function,Object,String。
let a = 10
let b = '10'
let c = undefined
let d = function() {}
let e = {}
let f = Symbol('dog')
console.log(typeof a) // number
console.log(typeof b) // string
console.log(typeof c) // undefined
console.log(typeof d) // function
console.log(typeof e) // object
console.log(typeof f) // symbol
2. null
null类型直接和null相比。
let a = null
console.log(a == null) // ture
3.isNaN
NaN用isNaN去推断。
let a = NaN
console.log(isNaN(a)) // true
4.Array.isArray
数组用Array.isArray() 或者 Object.prototype.toString.call(要判断的对象) === "[object Array]"。
let a = []
console.log( Array.isArray(a) ) // true
console.log( Object.prototype.toString.call(a) === "[object Array]" ) // true
5.instanceof
其它类型使用instanceof进行类型推断。
let a = []
let b = {}
let c = function() {}
document.write( a instanceof Array ) // true
document.write( b instanceof Object ) // true
document.write( c instanceof Function ) // true