iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >javascript如何判断对象是不是存在
  • 819
分享到

javascript如何判断对象是不是存在

2024-04-02 19:04:59 819人浏览 独家记忆
摘要

这篇文章给大家分享的是有关javascript如何判断对象是不是存在的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 判断方法:1、用“if(!Obj)

这篇文章给大家分享的是有关javascript如何判断对象是不是存在的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

判断方法:1、用“if(!Obj)”语句;2、用“if(!window.Obj)”;3、用“if(!this.Obj)”;4、用“if(typeof Obj=="undefined")”;5、用“if(Obj==undefined)”等等。

教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

javascript判断对象是否存在的方法

现在,我们要判断一个全局对象myObj是否存在,如果不存在,就对它进行声明。用自然语言描述的算法如下:

  if (myObj不存在){
    声明myObj;
  }

下面给大家分享10种实现方法:

方法1:

  if (!myObj) {
    var myObj = { };
  }

方法2:

除了var命令,还可以有另一种改写,也能得到正确的结果:

  if (!window.myObj) {
    myObj = { };
  }

window是javascript的顶层对象,所有的全局变量都是它的属性。所以,判断myobj是否为空,等同于判断window对象是否有myobj属性,这样就可以避免因为myObj没有定义而出现ReferenceError错误。不过,从代码的规范性考虑,最好还是对第二行加上var:

  if (!window.myObj) {
    var myObj = { };
  }

或者写成这样:

  if (!window.myObj) {
    window.myObj = { };
  }

方法3:

上面这种写法的缺点在于,在某些运行环境中(比如V8、Rhino),window未必是顶层对象。所以,考虑改写成:

  if (!this.myObj) {
    this.myObj = { };
  }

在全局变量的层面中,this关键字总是指向顶层变量,所以就可以独立于不同的运行环境。

方法4:

但是,上面这样写可读性较差,而且this的指向是可变的,容易出错,所以进一步改写:

  var global = this;
  if (!global.myObj) {
    global.myObj = { };
  }

用自定义变量global表示顶层对象,就清楚多了。

方法5:

还可以使用typeof运算符,判断myObj是否有定义。

  if (typeof myObj == "undefined") {
    var myObj = { };
  }

这是目前使用最广泛的判断javascript对象是否存在的方法。

方法6:

由于在已定义、但未赋值的情况下,myObj的值直接等于undefined,所以上面的写法可以简化:

  if (myObj == undefined) {
    var myObj = { };
  }

这里有两个地方需要注意,首先第二行的var关键字不能少,否则会出现ReferenceError错误,其次undefined不能加单引号或双引号,因为这里比较的是undefined这种数据类型,而不是"undefined"这个字符串

方法7:

上面的写法在"精确比较"(===)的情况下,依然成立:

  if (myObj === undefined) {
    var myObj = { };
  }

方法8:

根据javascript的语言设计,undefined == null,所以比较myObj是否等于null,也能得到正确结果:

  if (myObj == null) {
    var myObj = { };
  }

不过,虽然运行结果正确,但是从语义上看,这种判断方法是错的,应该避免。因为null指的是已经赋值为null的空对象,即这个对象实际上是有值的,而undefined指的是不存在或没有赋值的对象。因此,这里只能使用"比较运算符"(==),如果这里使用"精确比较运算符"(===),就会出错。

方法9:

还可以使用in运算符,判断myObj是否为顶层对象的一个属性:

  if (!('myObj' in window)) {
    window.myObj = { };
  }

方法10:

最后,使用hasOwnProperty方法,判断myObj是否为顶层对象的一个属性:

  if (!this.hasOwnProperty('myObj')) {
    this.myObj = { };
  }

感谢各位的阅读!关于“javascript如何判断对象是不是存在”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: javascript如何判断对象是不是存在

本文链接: https://www.lsjlt.com/news/80522.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • javascript如何判断对象是不是存在
    这篇文章给大家分享的是有关javascript如何判断对象是不是存在的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 判断方法:1、用“if(!Obj)...
    99+
    2024-04-02
  • Javascript中如何判断对象是否存在
    本篇文章给大家分享的是有关Javascript中如何判断对象是否存在,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Javascript 语言的...
    99+
    2024-04-02
  • JavaScript中怎么判断对象是否存在
    JavaScript中怎么判断对象是否存在,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。现在,我们要判断一个全局对象myObj是否存在,如...
    99+
    2024-04-02
  • es6如何判断对象key是否存在
    这篇文章主要介绍了es6如何判断对象key是否存在,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 判断方法:1、...
    99+
    2024-04-02
  • 多种方法判断Javascript对象是否存在
    Javascript语言的设计不够严谨,很多地方一不小心就会出错。 举例来说,请考虑以下情况。 现在,我们要判断一个全局对象myObj是否存在,如果不存在,就对它进行声明。用自然语言...
    99+
    2022-11-15
    判断存在 js对象
  • javascript如何判断对象是否为空
    这篇文章将为大家详细讲解有关javascript如何判断对象是否为空,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。方法:1、使用“JSON.stringify()”方法,将对象转化为json字符串,再判断...
    99+
    2023-06-14
  • javascript如何判断id是否存在
    这篇文章主要为大家展示了“javascript如何判断id是否存在”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript如何判断id是否存在”这篇文...
    99+
    2024-04-02
  • javascript如何判断class是否存在
    这篇文章主要讲解了“javascript如何判断class是否存在”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript如何判断class是否存...
    99+
    2024-04-02
  • javascript如何判断div是否存在
    小编给大家分享一下javascript如何判断div是否存在,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
  • js如何判断对象数组中是否存在某个对象
    目录js判断对象数组中是否存在某个对象js对象数组根据某一属性查找对象总结js判断对象数组中是否存在某个对象 1. 判断数组中是否存在某个元素 直接用数组的indexOf方法就好,存...
    99+
    2023-05-16
    js判断对象数组 js判断是否存在某对象 js判断某个对象
  • 怎么在javascript中判断是否为对象
    本篇文章给大家分享的是有关怎么在javascript中判断是否为对象,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。判断方法:1、使用toString()来判断;2、使用“obj...
    99+
    2023-06-14
  • JavaScript如何判断文件是否存在
    小编给大家分享一下JavaScript如何判断文件是否存在,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!JavaScript有什么特点1、js属于一种解释性脚本语言;2、在绝大多数浏览器的支持下,js可以在多种平台下运行,...
    99+
    2023-06-15
  • JavaScript如何判断是不是日期
    这篇文章主要介绍“JavaScript如何判断是不是日期”,在日常操作中,相信很多人在JavaScript如何判断是不是日期问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Ja...
    99+
    2024-04-02
  • 如何使用 JavaScript判断HTML是否存在
    在web开发中,我们经常需要根据特定的条件对HTML网页进行操作。有时候我们需要确定网页中是否存在特定的 HTML 元素。在这种情况下,使用 JavaScript 是一个不错的选择。本文将介绍如何使用 JavaScript 判断 HTML ...
    99+
    2023-05-14
  • JavaScript中如何判断对象是否为空的方法
    目录Object.keys()示例为什么需要额外判断对象的构造函数呢?另一种边界情况总结在自己的日常开发中,一般使用Object.keys()来判断对象是否为空: const obj...
    99+
    2024-04-02
  • java中如何判断对象是否是垃圾
    目录判断对象是否为“垃圾”引用计数算法可达性分析算法垃圾的回收Finalize方法方法区回收Java会自动进行内存管理,JVM会进行垃圾回收,哪它是怎么判定哪...
    99+
    2023-05-18
    java 判断垃圾 java判断对象垃圾
  • Python判断对象是否是functio
    在Python中,判断一个对象是否是方法有如下三种方法。 1. 根据“__call__”属性判断 有时候用python就有这么一种感悟,各种钩子函数就是通过内置的“__”属性实现,python学得好不好,就是对“__”属性理解得透...
    99+
    2023-01-31
    对象 Python functio
  • jquery如何判断对象是否相同
    本篇内容介绍了“jquery如何判断对象是否相同”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • es6如何判断对象是否为空
    今天小编给大家分享一下es6如何判断对象是否为空的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。判断方法:1、用“Object...
    99+
    2023-07-04
  • java如何判断对象是否为空
    在Java中,可以使用以下方法来判断一个对象是否为空:1. 使用`==`运算符来判断对象是否为null。如果对象等于null,则表示...
    99+
    2023-08-17
    java
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作