DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> Javascript中判斷對象是否為空
Javascript中判斷對象是否為空
編輯:關於JavaScript     

發現了一個巧妙的實現: 需要檢查一個對象(Object)是否為空,即不包含任何元素。Javascript 中的對象就是一個字典,其中包含了一系列的鍵值對(Key Value Pair)。檢查一個對象是否為空,等價於檢查對象中有沒有鍵值對。寫成代碼,形如:

if (isEmptyObject(obj)) {

 // obj is empty
} else {
 // not empty
} 

至於 isEmptyObject 的實現,jQuery 中有一個很有想法的方式,請看代碼: 

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

 盡管 Javascript 沒有原生提供 isEmpty() 方法,但它提供了迭代器,可以用來遍歷所有的鍵值對。於是 jQuery 所做的事情,就是嘗試遍歷,如果有任何一個鍵值對,即說明對象非空,直接返回 false。從效率上來說,由於只讀取了一個元素,頂多加上一些跳出循環的開銷,實際性能不會比原生方法差太多。這是一個非常巧妙的實現。

注:有網友指出 ES5 中提供了 Object.getOwnPropertyNames 方法來獲取所有的元素鍵。它的返回值是一個數組,當數組長度為零時,說明對象為空。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved