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

typeof

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

instanceof

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

Object.prototype.toString.call()

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

相关推荐
2401_840192278 分钟前
如何学习一门计算机技术
开发语言·git·python·devops
巷北夜未央22 分钟前
Python每日一题(14)
开发语言·python·算法
梅子酱~26 分钟前
Vue 学习随笔系列二十二 —— 表格高度自适应
javascript·vue.js·学习
你的人类朋友31 分钟前
JS严格模式,启动!
javascript·后端·node.js
Carlos_sam40 分钟前
OpenLayers:如何控制Overlay的层级?
前端·javascript
雾月551 小时前
LeetCode 914 卡牌分组
java·开发语言·算法·leetcode·职场和发展
Y.O.U..1 小时前
今日八股——C++
开发语言·c++·面试
weixin_307779131 小时前
使用C#实现从Hive的CREATE TABLE语句中提取分区字段名和数据类型
开发语言·数据仓库·hive·c#
z_mazin1 小时前
JavaScript逆向魔法:Chrome开发者工具探秘之旅
javascript·chrome·爬虫
Xiaok10181 小时前
解决 Hugging Face SentenceTransformer 下载失败的完整指南:ProxyError、SSLError与手动下载方案
开发语言·神经网络·php