首页 > 其他分享 >JS判断数据类型

JS判断数据类型

时间:2022-10-13 17:06:10浏览次数:56  
标签:判断 obj Object 数据类型 object JS class2type toString prototype


怎么判断对象类型?

  • 可以通过​​Object.prototype.toString.call(xx)​​​。这样我们就可以获得类似​​[object Type]​​ 的字符串。
  • ​instanceof​​​ 可以正确的判断对象的类型,因为内部机制是通过判断对象的原型链中是不是能找到类型的​​prototype​​。

封装好的函数 

judgeType (obj) {
let class2type = {};
'Array Date RegExp Object Error'.split(' ').forEach(e =>
class2type['[object ' + e + ']'] = e.toLowerCase()
)
if (obj == null) return String(obj)
return typeof obj === 'object' ? class2type[Object.prototype.toString.call(obj)] || 'object' : typeof obj
},

 

 

 

标签:判断,obj,Object,数据类型,object,JS,class2type,toString,prototype
From: https://blog.51cto.com/u_13028258/5754007

相关文章

  • JS实现二分搜索
    二分查找的前提为:数组、有序。逻辑为:优先和数组的中间元素比较,如果等于中间元素,则直接返回。如果不等于则取半继续查找。非递归实现functionbinarySearch(arr,target){......
  • JS面试点- bind / call / apply
    bind/call/apply可用于this的显式绑定this绑定的是call,apply,bind的第一个参数​​call()方法​​vara={user:'fx',fn:function(){console.......
  • 在考虑闭包的情况下JS变量存储在栈与堆的区分
    变量存储在闭包中的问题按照常理来说栈中数据在函数执行结束后就会被销毁,那么 ​​JavaScript​​ 中函数闭包该如何实现,先简单来个闭包:functioncount(){letnum=......
  • js 输入框中过滤表情,颜文字(正则)
    letname=this.name //this.name为输入框中的输入内容 varregStr=/[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]|[\uD83C|\uD83D|\uD83E][\uDC00-\uD......
  • JS判断数组中是否包含某个值
    方法一:array.indexOf此方法判断数组中是否存在某个值,如果存在,则返回数组元素的下标,否则返回-1。vararr=[1,2,3,4]varindex=arr.indexOf(3)console.log(index)方法......
  • JS实现继承的方法
    方法一:借助callfunctionParent(sex){this.name='fx'this.sex=sex}Parent.prototype.test=function(){console.log('我是函数')}Parent.prototype.wh......
  • js判断手机系统是android还是ios?
    varu=navigator.userAgent;//识别各种浏览器varisAndroid=u.indexOf('Android')>-1||u.indexOf('Adr')>-1;//android终端varisiOS=!!u.match(/\(i[^;]......
  • 判断时间格式
    defconvertDateFormat(str:String):String={valdate=if(str!=null&&str.nonEmpty&&str.trim.contains(""))str.split("")(0)else......
  • js倒计时
    倒计时//倒计时输入时间-现在时间varinputTime=prompt('请输入当前时间,格式为YYYY-MM-DD或YYYY/MM/DD');//prompt返回值是字符串要进行数据类型转换......
  • js逆向案例
    js逆向案例目录零、概述一、请求参数|Cookie|Referer校验(⭐)1、案例1_有道翻译2、案例2_百度翻译二、参数响应如何获取AES、DES、RSA(⭐)1、案例3_建筑市场_AES2、案例4_毛毛租......