typeof 和 instanceOf的区别 || JS判断数据类型的方法
发布日期:2021-11-21 16:35:39
浏览次数:10
分类:技术文章
本文共 642 字,大约阅读时间需要 2 分钟。
typeof 是一个一元运算,放在一个运算数之前,返回值是一个字符串,该字符串说明运算数的类型。typeof 一般只能返回如下几个结果:
number,boolean,string,function,object,undefined。我们可以使用 typeof 来获取一个变量是否存在;如果检测对象或null的话都会返回‘object’;instanceof 用于判断一个变量是否某个对象的实例;所有引用类型值都是object的实例,所以在检测一个引用类型值和Object构造函数时,instanceof操作符会一直返回true。如用instanceof操作符检测基本类型值时,会一直返回false,原因很简单,因为基本类型不是对象。
用constructor判断
***用Object.prototype.toString.call(data);此种方式可以准确的判断出数据类型。
原理: 1、在JavaScript中,一切皆为对象,强制将变量转换成为字符串,使它暴露出内部的[[class]]属性。 2、首先获取对象内部属性[[class]](每个对象都有属于自己的[[class]]),然后根据这个属性返回一个类似于"[object Number]"的字符串作为结果, ([[]]用来表示语言内部用到的,外部不可直接访问的属性,称之为内部属性。)。利用此方法并且配合call方法可以取得任何对象内部属性的[[class]],然后把类型检测转化为字符串比较,以此来判断数据类型。转载地址:https://blog.csdn.net/yyychocolate/article/details/108092080 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2024年04月19日 21时28分46秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
说说在 python 中,如何删除左右两边不需要的字符
2019-04-26
说说如何管理 Spring Boot 中的起步依赖
2019-04-26
说说如何在 Linux 中,新建账号
2019-04-26
说说如何在 linux 中搭建 FTP 服务
2019-04-26
说说 Python 的正则表达式
2019-04-26
说说 Spring Boot 属性配置源的加载顺序
2019-04-26
说说如何查看 Python Django 的版本号
2019-04-26
说说 Python Django 应用的基础目录结构
2019-04-26
说说如何在 Python 的正则表达式中使用分组
2019-04-26
说说 Python 正则表达式的匹配类型
2019-04-26
说说 Python 的贪心和非贪心匹配策略
2019-04-26
说说在 Python 中,如何找出所有字符串匹配
2019-04-26
说说 Python 正则表达式中的那些字符类别码
2019-04-26
说说 Spring Boot 的条件化注解
2019-04-26
说说如何使用 Python 在 word 中创建表格
2019-04-26
Python 基础知识考题与解答(2020 版)
2019-04-26
说说 Oracle 的 SYSDATE 函数
2019-04-26
说说 Oracle 的 NVL 与 NVL2 函数
2019-04-26
说说 TCP 协议以及三次握手流程
2019-04-26
说说 Oracle 的 TRUNC 函数
2019-04-26