在JS中,typeof 和 instanceof 方法常用来判断一个变量是否为空,或者是什么类型的。
区别:
typeof是一个一元运算,放在运算数之前,运算数可以是任意类型的。返回值是一个字符串,该字符串用来表示判断的变量的类型。返回结果一般是Number、String、Boolean、Object、Function、Undefind.
但是对于 Array,Null 等特殊对象使用 typeof 一律返回 object,这正是 typeof 的局限性。这时就要用到下面要说的instanceof方法。
instanceof是用于判断一个变量是否属于某个对象的实例。
instanceof
运算符用来检测 constructor.prototype
是否存在于参数 object
的原型链上,也可以实现判断数据类型, 返回值为布尔.
网友评论