目前据我所知的方法共有三种

1. typeof

let obj ={a:1,b=2,c:3}
console.log(typeof(obj)) //返回'object'

从判断结果上来看,似乎并没有太大的问题,但如果你把对象改为数组,他返回的也会是同样的结果,因此不推荐这种写法,
对于数组、函数、对象来说,其关系错综复杂,使用 typeof 都会统一返回 “object” 字符串,
null也会返回’object’
对NaN返回是’number’
感兴趣的小伙伴可以自己动手实现一下

2. instanceof Object

let obj ={a:1,b=2,c:3}
let arr =[1,2,3]
console.log(obj instanceof Object) //返回'true'
console.log(arr instanceof Array) //返回'true'

这种方法返回的是boolean类型,基本可以实现我们想要的结果,不仅这样,它还可以判断是否为数组,讲到这里,还有种判断数组的方法,我也想分享给大家
Array.isArray(arr) 返回类型也是boolean类型

3. Object.prototype.toString.call()

let obj ={a:1,b=2,c:3}
let arr =[1,2,3]
console.log(Object.prototype.toString.call(arr)) //返回'[object Array]'
console.log(Object.prototype.toString.call(obj)) //返回'[object Object]'

这种方法可以更为严格的判断对象是什么类型,我更比较喜欢这一种,当然,如果你还有其他的方法,欢迎在评论区指出哦

js中判断是否对象的方法相关推荐

  1. JavaScript -- 时光流逝(三):js中的 String 对象的方法

    JavaScript -- 知识点回顾篇(三):js中的 String 对象的方法 (1) anchor(): 创建 HTML 锚. <script type="text/javasc ...

  2. js中的数组对象排序(方法sort()详细介绍)

    定义和用法 sort() 方法用于对数组的元素进行排序. 语法    arrayObject.sort(sortby) 参数sortby:可选.规定排序顺序.必须是函数. 返回值 对数组的引用.请注意 ...

  3. js中获取事件对象的方法小结

    代码如下: var evt = window.event || arguments[0]; 下面分三种添加事件的方式讨论,你也许会看到以前没有看到过的获取方式. 1,第一种添加事件的方式,直接在htm ...

  4. 3.js中判断数组中是否存在某个对象/值,判断数组里的对象是否存在某个值 的五种方法 及应用场景|判断数组里有没有某对象,有不添加,没有则添加到数组

    3.js中判断数组中是否存在某个对象/值,判断数组里的对象是否存在某个值 的五种方法 及应用场景 一.当数组中的数据是简单类型时: 应用js中的indexof方法:存在则返回当前项索引,不存在则返回 ...

  5. js中判断数据类型的方法

    JS中判断数据类型的方法: 使用typeof操作符. 对一个值使用 typeof 操作符可能返回下列某个字符串,返回的类型都是字符串形式. (1) undefined:如果这个值未定义 (2) boo ...

  6. js中判断两个对象是否相等。

    js中判断两个对象是否相等. js中的Object.Array.Function等复杂数据类型,是无法直接用==和===操作符进行比对的. Object对比 const tar = { name:'张 ...

  7. JS中判断对象是对象还是数组

    JS中判断对象是对象还是数组的方法 JS中判断对象是不是数组的方法 JavaScript中检测对象的方法  1.typeof操作符  这种方法对于一些常用的类型来说那算是毫无压力,比如Function ...

  8. js中判断对象具体类型

    大家可能知道js中判断对象类型可以用typeof来判断,看下面的情况. <script>alert(typeof 1);//numberalert(typeof "2" ...

  9. js解析java对象数组_js接收并转化Java中的数组对象的方法

    在做项目时,要向ocx控件下发命令,就要在js中得到java中的对象,然后拼成一种格式,下发下去...当对象是一个时比较简单,但如果对象是一个数组时,就略显麻烦了. 开始我以为有简单的方式,可以直接进 ...

最新文章

  1. 基于python的数据分析方法五种_利用Python进行数据分析 第5章 pandas入门(1)
  2. 真牛逼!我司用了7年的分布式锁方案...
  3. R语言axis函数自定义可视化的坐标轴刻度线(axis ticks)
  4. ARP协议全面实战手册——协议详解、攻击与防御(内部资料)
  5. python数据比例_#python# #数据分析# 性别比例分析
  6. mac book file management system
  7. 自定义shell脚本
  8. Windows Server 2003证书服务配置与管理
  9. 递归实现排列型枚举(搜索)
  10. [天地间]02-瑞士达沃斯小镇
  11. html怎么导航栏中加边框,html – 使用CSS在导航栏中显示边框三角形
  12. 销售额总和的分类汇总计算机操作,excel分类汇总-EXCEL函数公式大全之利用MONTH函数和分类汇总汇总每个月的销售额...
  13. python中keys函数怎么用_Python keys()函数
  14. Javaweb中上传图片,获取路径
  15. SwiftUI中应用Hero动画(Hero Animation)时一些需要填的坑
  16. 大学C语言考试易错知识点总结
  17. 科技云报道:混合云起势,青云QingCloud领跑
  18. python的pandas库下载_pandas库下载安装-Pandas for python下载v0.25.0最新版-西西软件下载...
  19. 视频打赏平台制作,微信打赏平台
  20. R - Simpsons’ Hidden Talents

热门文章

  1. 数据库里怎么修改服务器爆率,关于数据库点窜爆率及点窜和增加掉落的教程(纯小白版)...
  2. 如何学习 Linux
  3. Linux桌面池,24个值得尝试的Linux桌面环境
  4. 富士通半导体携手奇瑞汽车
  5. 通过CMM5/CMMI5级的企业
  6. 【游戏建模】zbrush的15个雕刻小技巧
  7. 算法设计和分析课程设计报告
  8. 新人零基础学UI设计有哪些学习方式?UI设计的未来发展怎么样?
  9. VCSEL激光器、SBD肖特基二极管最新研究成果
  10. tomcat依赖导入步骤_图说tomcat(三)导入tomcat源码到idea