JavaScript类型检测

参考视频:JavaScript类型检测-慕课网

可以用以下5种来进行类型检测

typeof

JavaScript类型检测_第1张图片
例子

适用场景:

  • 检测基础类型及function,对象检测全部都是object

坑:

  • 历史遗留问题,null的typeof是object typeof null // 'object'

instanceof

JavaScript类型检测_第2张图片
例子

适用场景:

  • 检测对象

坑:

  • 在iframe和window间检测失效,因为iframe的原型链和window的完全不同

Object.prototype.toString

JavaScript类型检测_第3张图片
例子

适用场景:

  • 检测任意类型

坑:

  • IE6/7/8 遇到null和undefined返回[object Object]

constructor

obj.constructor.name
JavaScript类型检测_第4张图片

JavaScript类型检测_第5张图片
使用

duck type

你可能感兴趣的:(JavaScript类型检测)