JavaScript常用的几种类型检测方法

本文介绍了JavaScript中常见的类型检测方法,包括typeof、instanceof、Object.prototype.toString等,并总结了它们各自的适用场景和局限性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JavaScript中常用的几种类型主要有:

  1. typeof
  2. instanceof
  3. Object.prototype.toString
  4. constructor
  5. duck type
适应条件总结:

typeof:适合基本类型及function检测,遇到null失效。

typeof 123 == number;

typeof undefined==undefined;

typeof null ==object;(失效)

objct.portotype.toString:通过{}.toString拿到,适合内置对象和基元类型,遇到null和undefined失效(IE678等返回[object Object]).

Object.prototype.toString.apply([]); === “[object Array]”;
Object.prototype.toString.apply(function(){}); === “[object Function]”;
Object.prototype.toString.apply(null); === “[object Null]”
Object.prototype.toString.apply(undefined); === “[object Undefined]”
instanceof:适合自定义对象,也可以用来检测原生对象,在不同iframe和window间检测时失效。

obj instanceof Object

注意:不同window或iframe间的对象类型检测不能使用instanceof!

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值