jQuery.isEmptyObject() 函数详解 转

Posted 圐圙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery.isEmptyObject() 函数详解 转相关的知识,希望对你有一定的参考价值。

原文地址 http://www.365mini.com/page/jquery_isemptyobject.htm

 

jQuery.isEmptyObject()函数用于判断指定参数是否是一个空对象

所谓"空对象",即不包括任何可枚举(自定义)的属性。简而言之,就是该对象没有属性可以通过for...in迭代。

该函数属于全局jQuery对象。

语法

jQuery 1.4 新增该静态函数。

jQuery.isEmptyObject( object )

参数

参数描述
object 任意类型需要进行判断的任意值。

注意:该参数应该始终是一个纯粹的javascript Object,因为其他类型(例如:DOM元素、原始字符串/数字、宿主对象)可能无法获得跨浏览器的一致结果。要确定一个对象是否是一个纯粹的JavaScript Object,你可以使用$.isPlainObject()方法。

返回值

jQuery.isEmptyObject()函数的返回值为Boolean类型,如果指定的参数是空对象,则返回true,否则返回false

示例&说明

jQuery.isEmptyObject()是通过for...in循环来进行判断,其源代码部分如下:

isEmptyObject: function( obj ) {
    var name;
    for ( name in obj ) {
        return false;
    }
    return true;
}

jQuery.isEmptyObject()函数的jQuery示例代码如下:

//在当前页面内追加换行标签和指定的html内容
function w( html ){
    document.body.innerHTML += "<br/>" + html;
}



w( $.isEmptyObject( { } ) ); // true
w( $.isEmptyObject( new Object() ) ); // true

w( $.isEmptyObject( [ 0 ] ) ); // false
w( $.isEmptyObject( { name: "CodePlayer"} ) ); // false
w( $.isEmptyObject( { sayHi: function(){} } ) ); // false
function User(){
   
}
User.prototype.word = "Hello";
// 自定义的原型对象上的属性也是可枚举的
w( $.isEmptyObject( new User() ) ); // false


/* 尽管在没有为空数组、Function、Number等内置对象添加自定义属性的情况下,它们也是不可枚举的,但是不推荐这么做。因为isEmptyObject()的参数应该始终是一个纯粹的Object */

// 数组中没有元素,也无法通过for...in迭代出属性
w( $.isEmptyObject( [ ] ) ); // true
// Function、Number、String等内置对象也无法通过for...in迭代出属性
w( $.isEmptyObject( function(){ alert("xxx") } ) ); // false

以上是关于jQuery.isEmptyObject() 函数详解 转的主要内容,如果未能解决你的问题,请参考以下文章

lua cjson 怎么判断null

jquery中的animate动态效果是如何通过Js实现的?

js如何判断json是否为空?

损失函数(损失函数代价函数目标函数)​​​​​​​MSE0-1损失函数绝对误差损失函数分位数损失函数Huber损失函数感知损失函数Hinge损失函数指数损失函数对数损失函数

Kotlin函数 ⑧ ( 函数引用 作为函数参数 | ::函数名 | 函数类型 作为函数返回值类型 )

测开之函数进阶篇・第五篇《递归函数纯函数匿名函数偏函数》