typeof用于原始值
但用于引用值时,我们虽然可以判断出某个值是一个对象,但是当我们想要知道某个值是一个什么类型的对象时,instanceof就派上了用场。
可总结为:当判断原始值或者判断是否为对象时用typeof,当判断是一个什么类型的对象时用Instanceof
let a = 1
let obj = {
name: 1
}
console.log(typeof a) // number
console.log(typeof obj) // object
console.log(a instanceof Object) // false instanceof检测原始值时,始终为false,因为原始值不是对象
console.log(obj instanceof Object) // true instanceof检测任何引用值和Object构造函数都会返回true(所有引用值都是Object的实例)
网友评论