在jquery中,isEmptyObject()方法用于判斷指定參數(shù)是否是一個空對象,即檢測是否包括任何可枚舉(自定義)的屬性,語法“jQuery.isEmptyObject(object)”;該方法的的返回值為Boolean類型,如果指定參數(shù)是空對象,則返回true,否則返回false。
前端(vue)入門到精通課程,老師在線輔導:聯(lián)系老師
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調(diào)試工具:點擊使用
本教程操作環(huán)境:windows7系統(tǒng)、jquery3.6.1版本、Dell G3電腦。
jQuery isEmptyObject()函數(shù)介紹
jQuery.isEmptyObject()函數(shù)用于判斷指定參數(shù)是否是一個空對象。
所謂”空對象”,即不包括任何可枚舉(自定義)的屬性。簡而言之,就是該對象沒有屬性可以通過for…in迭代。
說明:該函數(shù)屬于全局jQuery對象。jQuery 1.4 新增該靜態(tài)函數(shù)。
語法:
jQuery.isEmptyObject( object )
參數(shù):
參數(shù) | 描述 |
object | 任意類型需要進行判斷的任意值。 |
注意:該參數(shù)應該始終是一個純粹的JavaScript Object,因為其他類型(例如:DOM元素、原始字符串/數(shù)字、宿主對象)可能無法獲得跨瀏覽器的一致結(jié)果。要確定一個對象是否是一個純粹的JavaScript Object,你可以使用$.isPlainObject()方法。
返回值:
jQuery.isEmptyObject() 函數(shù)的返回值為Boolean類型,如果指定的參數(shù)是空對象,則返回true,否則返回false。
isEmptyObject()函數(shù)使用示例
jQuery.isEmptyObject()是通過for…in循環(huán)來進行判斷,其源代碼部分如下:
isEmptyObject: function( obj ) { var name; for ( name in obj ) { return false; } return true; }
jQuery.isEmptyObject()函數(shù)的jQuery示例代碼如下:
//在當前頁面內(nèi)追加換行標簽和指定的HTML內(nèi)容 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 /* 盡管在沒有為空數(shù)組、Function、Number等內(nèi)置對象添加自定義屬性的情況下,它們也是不可枚舉的,但是不推薦這么做。因為isEmptyObject()的參數(shù)應該始終是一個純粹的Object */ // 數(shù)組中沒有元素,也無法通過for...in迭代出屬性 w( $.isEmptyObject( [ ] ) ); // true // Function、Number、String等內(nèi)置對象也無法通過for...in迭代出屬性 w( $.isEmptyObject( function(){ alert("xxx") } ) ); // false
【推薦學習:jQuery視頻教程、web前端視頻】