instanceof和typeof 详解

本文详细探讨了JavaScript中的`typeof`和`instanceof`操作符。`typeof`对于基本数据类型判断准确,但对引用类型如Object、Array等判断不精确。而`instanceof`则用于判断构造函数的prototype是否存在于对象的原型链上,适用于引用类型,但对基本类型判断不准确。在处理多窗口交互时,`instanceof`可能出现问题。在需要精确判断数据类型时,应结合使用多种方法。
摘要由CSDN通过智能技术生成

判断变量是某种数据类型也是实际开发中常见的操作,总结如下:

写在前面

在介绍这两者之前先来回顾下js中的数据类型都有哪些。

  1. 基础数据类型
  • null
  • undefined
  • String
  • Number
  • Boolean
  1. 引用数据类型
  • Object、Array、Function、Date等
typeof

typeof操作符返回一个字符串,我们先来看看使用typeof判断数据类型的结果

typeof 10          // 'number'
typeof Number(10)  // 'number'
typeof NaN        // 'number'
typeof Infinity   // 'number'

typeof 'hello'           // 'string'
typeof String('hello')   // 'string'
typeof ''              // 'string'
typeof (typeof 10)      // 'string'

typeof true           // 'boolean'
typeof Boolean(true)  // 'boolean'

typeof undefined     // 'undefined'


typeof [1,2,3]              // 'object'
typeof {name: &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值