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