javascript中如何判断一个新创建对象是无属性的空对象?

原创 2015年11月18日 10:36:10

我们知道,在js中创建一个新对象时会引用所继承对象的原型,这个原型要么是你之前定义好的已有对象,要么是js的内置对象或在浏览器重的其他宿主对象。新对象创建完成后,新对象中会包含所继承的对象的属性。但是如果新对象没有添加自己的自有属性的话,那么我们可以人为这个对象是一个空对象。


var o = new Object();  //或者 var o = {};

上面语句创建了一个新对象o,这时对象o中除了从Object对象中继承的属性和方法外没有任何自有属性或方法。那么我们就可以通过判断o中是否存在自有属性或方法来判断该对象是否是“空对象“。

//方法如下
function isNullObject(obj){
    for(var p in obj){
        if(obj.hasOwnProperty(p)){
            return false;  //有自有属性或方法,返回false
        }
    }
    return true;  //没有自有属性或方法,返回true,该对象是空对象
}
利用上面的方法,我们就可以判断出一个对象到底是否是空对象了,小伙伴们可以去测试一下了。。。

版权声明:本文为博主原创文章,如需转载请注明出处,谢谢。

java 判断对象是否为空

java 中如何判断对象是否为空呢,特别是一个weizhi
  • hw1287789687
  • hw1287789687
  • 2014年04月26日 11:25
  • 9508

js如何判断一个对象{}是否为空对象,没有任何属性

js如何判断一个对象{}是否为空对象,没有任何属性前段时间用js写了一个类似"angularjs"用于数据绑定的东西,功能是比较简单了,通常应该传进来的是一个ArrayList JSON对象数组,但有...
  • testcs_dn
  • testcs_dn
  • 2014年10月24日 19:15
  • 197288

js中创建空对象的方法

最近学习了一下js的对象,其中创建一个空对象了解到三种方法,如下://方法一 var obj1 = {};//方法二 var obj2 = Object.create(null);//方法三 var ...
  • ann295258232
  • ann295258232
  • 2016年12月30日 15:44
  • 196

JavaScript中定义对象的几种方式(JavaScript中没有类的概念,只有对象)

1)基于已有对象扩充其属性和方法 var object = new Object(); object.name = "kyle"; //添加属性name object.sayName = f...
  • silianlinyi
  • silianlinyi
  • 2012年05月28日 20:38
  • 2606

【JavaScript】 判断空对象区别于null、undefined

{}就是一个空对象,由于没有任何属性和方法,所以可以利用这一特点进行区别:12345678function isEmpty (object) { for (var i in object) { ...
  • sodino
  • sodino
  • 2016年05月12日 17:42
  • 1824

js判断对象是否为空对象的几种方法

1.将json对象转化为json字符串,再判断该字符串是否为"{}" var data = {}; var b = (JSON.stringify(data) == "{}"); alert(b...
  • qq_38627581
  • qq_38627581
  • 2017年08月18日 09:04
  • 11500

js如何判断一个对象{}是否为空对象,没有任何属性

[javascript] view plain copy   if (typeof model.rows === "object" && !(model.rows inst...
  • u013216667
  • u013216667
  • 2016年03月22日 18:34
  • 378

new 对象时加不加括号的区别(c++对象)

广泛言论:加括号调用没有参数的构造函数,不加括号调用默认构造函数或唯一的构造函数。 如果该类没有定义构造函数(由编译器合成默认构造函数)也没有虚函数,那么class c = new class;...
  • u012750259
  • u012750259
  • 2015年04月02日 15:27
  • 1701

C#中new一个对象的过程说明

在代码中我们经常能看到下面这样的语句。 [csharp] view plain copy   A a = new A();(1)   B b = n...
  • guoduhua
  • guoduhua
  • 2017年02月17日 17:50
  • 505

判断JavaScript对象为null或者属性为空

首先说下null与undefined区别: 对已声明但未初始化的和未声明的变量执行typeof,都返回"undefined"。 null表示一个空对象指针,typeof操作会返回"object"。...
  • jiang_my
  • jiang_my
  • 2017年07月28日 21:22
  • 615
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:javascript中如何判断一个新创建对象是无属性的空对象?
举报原因:
原因补充:

(最多只允许输入30个字)