DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> JavaScript中創建字典對象(dictionary)實例
JavaScript中創建字典對象(dictionary)實例
編輯:關於JavaScript     

對於JavaScript來說,其自身的Array對象僅僅是個數組,無法提供通過關鍵字來獲取保存的數據,jQuery源碼中提供了一種非常好的方式來解決這個問題,先看一下源碼:

復制代碼 代碼如下:
function createCache() {
 var keys = [];

 function cache(key, value) {
  // Use (key + " ") to avoid collision with native prototype
  // properties (see Issue #157)
  if (keys.push(key += " ") > Expr.cacheLength) {
   // Only keep the most recent entries
   delete cache[keys.shift()];
  }
  return (cache[key] = value);
 }
 return cache;
}

上述源碼是創建一個編譯結果的緩存,代碼調用方式如下:

復制代碼 代碼如下:
var codecache = createCache();

源碼中,keys用來保存鍵,而cache對象用來保存鍵值對,並通過全局變量Expr.cacheLength控制鍵的最大數量,若超過該數量,則自動刪除第一個鍵及鍵值對。
本代碼利用了閉包的結構,使外部代碼無法訪問到keys變量,這樣就能確保keys變量的安全性。當然,由於JavaScript語句的特點,外部代碼還是可以通過修改cache屬性使鍵與鍵值對不匹配。不過,只要不故意惡搞,這本身應該也沒有太大的關系。

當然,它也不能宣誓一個完善的dictionary對象,因為其未提供主鍵重復的判斷等關鍵功能,有興趣的朋友們可以完善它。

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