JS数据类型检测的方式有哪些 (常用)

typeof

  • 其中数组、对象、null都会被判断为object,其他判断都正确
  • typeof返回的类型都是字符串形式

instanceof

  • instanceof :用于检测一个实例是否属于某个类,通过验证当前类的原型 prototype 是否出现在实例的原型链 __proto__ 上。它不能检测基本数据类型,且对于数组、正则等对象,检测结果都是 true ,无法准确判断是否为普通对象。另外,如果手动修改了原型链,检测结果可能不准确。例如:

Object.prototype.toString.call()

Object.prototype.toString.call() :这是一种比较准确的检测数据类型的方法。它通过获取 Object.prototype 上的 toString 方法,并使用 call 方法改变其 this 指向要检测的数据,从而返回数据类型的字符串。例如:

相关推荐
小阮的学习笔记13 分钟前
Vue3中使用LogicFlow实现简单流程图
javascript·vue.js·流程图
YBN娜14 分钟前
Vue实现登录功能
前端·javascript·vue.js
阳光开朗大男孩 = ̄ω ̄=14 分钟前
CSS——选择器、PxCook软件、盒子模型
前端·javascript·css
杨荧17 分钟前
【JAVA毕业设计】基于Vue和SpringBoot的服装商城系统学科竞赛管理系统
java·开发语言·vue.js·spring boot·spring cloud·java-ee·kafka
白子寰23 分钟前
【C++打怪之路Lv14】- “多态“篇
开发语言·c++
王俊山IT35 分钟前
C++学习笔记----10、模块、头文件及各种主题(一)---- 模块(5)
开发语言·c++·笔记·学习
为将者,自当识天晓地。37 分钟前
c++多线程
java·开发语言
小政爱学习!39 分钟前
封装axios、环境变量、api解耦、解决跨域、全局组件注入
开发语言·前端·javascript
魏大帅。1 小时前
Axios 的 responseType 属性详解及 Blob 与 ArrayBuffer 解析
前端·javascript·ajax
花花鱼1 小时前
vue3 基于element-plus进行的一个可拖动改变导航与内容区域大小的简单方法
前端·javascript·elementui