js如何判断一个对象是否存在

快乐打工仔 分类:实例代码

本章节介绍一下如何判断一个对象是否存在,从表面看起来简单,其实里面还是有很多需要注意的细节。

先看一段代码实例:

if (!obj) {
  obj = {}
}

上面的代码会报错,因为obj并没有声明就进行取值操作。

代码修改如下:

if (!obj) {
  var obj = {}
}

上面代码正确,因为javascript是先解析后执行,在解析期间,变量声明会提升,所以上面代码与下面是等价:

var obj
if (!obj) {
  obj = {}
}

再来看一个判断方式:

if (typeof obj == "undefined") {
  obj = {};
}

使用typeof即便是没有使用var声明obj也不会报错,不过最好在声明obj的时候使用var

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

特别说明:在ES2015中,由于暂时性死区的存在,所以可能会报错,具体参阅ES2015 let命令一章节。

js如何判断一个对象是否存在,这样的场景在实际项目中还是用的比较多的,关于js如何判断一个对象是否存在就介绍到这了。

js如何判断一个对象是否存在属于前端实例代码,有关更多实例代码大家可以查看

回复

我来回复
  • 暂无回复内容