当前位置: 首页 > 中文手册 > jQuery.isEmptyObject() 函数详解

jQuery.isEmptyObject() 函数详解

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

运行代码

20 2
我们认为: 用户的主要目的,是为了获取有用的信息,而不是来点击广告的。因此本站将竭力做好内容,并将广告和内容进行分离,确保所有广告不会影响到用户的正常阅读体验。用户仅凭个人意愿和兴趣爱好点击广告。
我们坚信:只有给用户带来价值,用户才会给我们以回报。
CodePlayer技术交流群1CodePlayer技术交流群1

帮朋友打一个硬广告:

P2P网贷系统(Java版本) 新年低价大促销,多年P2P技术积累,系统功能完善(可按需定制,可支持第三方存管、银行存管),架构稳定灵活、性能优异、二次开发快速简单。 另可提供二次开发、安装部署、售后维护、安全培训等一条龙服务。

外行看热闹,内行看门道。可以自信地认为,在系统设计上,比市面上的晓风、迪蒙、方维、绿麻雀、国融信、金和盛等P2P系统要好。
深圳地区支持自带技术人员现场考察源代码、了解主要技术架构,货比三家,再决定是否购买。

也可推荐他人购买,一旦完全成交,推荐人可获得实际售价 10% 的返现。
有意向者,详情请 点击这里 联系,工作时间立即回复。