首页 > 编程语言 >JavaScript判断变量类型的四种方法

JavaScript判断变量类型的四种方法

时间:2023-03-04 23:33:13浏览次数:52  
标签:Object 变量 检测 JavaScript 数据类型 toString prototype 四种 构造函数

typeof(根据二进制判断):

常用于判断基础数据类型,对于引用数据类型除了function 返回 ‘function’,其余都返回 ‘object’ (typeof null === object)

instanceof:

主要用于区分引用数据类型,检测构造函数的 prototype 属性是否出现在某个实例对象的 原型链 上

语法:object(某个实例对象) instenceof  constructor(构造函数)

不适用于简单数据类型的检测,检测过程繁琐且无法检测简单数据类型中的 undefined、null、symbol

Object.prototype.toString.call():

适用于所有的类型检测,且检测精准

语法:Object.prototype.toString.call(数据) ;返回的是该数据类型的字符串。

原理:Object.prototype.toString 表示一个返回对象类型的字符串,call() 方法可以改变this的指向,把Object.prototype.toString方法指向不同的数据类型上, 返回不同的结果

constructor(用于引用数据类型):

用于检测引用数据类型,检测方法是获取实例的构造函数,判断和某个类是否相同,如果相同就说明该数据是符合那个数据类型的

这种方法不会把原型链上的其他类也加入进来,避免了原型链的干扰

引用:https://www.nowcoder.com/exam/interview/detail?questionClassifyId=0&questionId=2412354&questionJobId=156&type=1

标签:Object,变量,检测,JavaScript,数据类型,toString,prototype,四种,构造函数
From: https://www.cnblogs.com/Du9191/p/17177158.html

相关文章

  • 6.JavaScript异常处理的方式,统一的异常处理方案
    一般来说有两种处理方式①抛出异常functionopenFile(fileName){if(!exists(fileName)){thrownewError('找不到文件'+fileName)}//...}②捕......
  • 5.JavaScript提供的正则表达式API、可以使用正则表达式解决常见问题(邮箱校验、URL解析
    JavaScript提供的正则表达式API、可以使用正则表达式解决常见问题(邮箱校验、URL解析、去重等)js正则常用API1.五个常用方法①testreg.test(str);//返回是否包含正则......
  • JavaScript 文档的加载
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title></title> <scripttype="text/javascript"> /* *浏览器在加载一个页面时,是按照自上向下......
  • JavaScript dom查询
    <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01//EN""http://www.w3.org/TR/html4/strict.dtd"><html> <head> <metahttp-equiv="Content-Type"content="text/html;......
  • JavaScript 前后切换图片
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title></title> <styletype="text/css"> *{ margin:0; padding:0; } #outer......
  • Activity的四种启动模式详解
    Activity的启动模式1.启动模式的类别标准模式(standard)栈顶复用模式(singleTop)栈内复用模式(singleTask)单例模式(singleInstance)2.任务栈任务栈Task,是一种用来放置......
  • JavaScript 邮件的正则
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title></title> <scripttype="text/javascript"> /* *电子邮件 * hello.nihao......
  • JavaScript Dom
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title></title> </head> <body> <buttonid="btn">我是一个按钮</button> <scripttype="text/javasc......
  • JavaScript 正则表达式2
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title></title> <scripttype="text/javascript"> /* *创建一个正则表达式检查一个字符串中......
  • 详解Prometheus四种指标类型
    指标是用来衡量性能、消耗、效率和许多其他软件属性随时间的变化趋势。它们允许工程师通过警报和仪表盘来监控一系列测量值的演变(如CPU或内存使用量、请求持续时间、延迟......