亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Javascript中怎么實現一個偽哈希表

發布時間:2021-07-02 14:14:27 來源:億速云 閱讀:121 作者:Leah 欄目:web開發

這期內容當中小編將會給大家帶來有關Javascript中怎么實現一個偽哈希表,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

javascript中實現哈希表的代碼:

1 function Hashtable() 
2 {
3   this._hash = {};
4   this._count = 0;
5   this.add = function(key, value) 
6   {
7       if (this._hash.hasOwnProperty(key)) return false;
8       else { this._hash[key] = value; this._count++; return true; }
9   }
10   this.remove = function(key) { delete this._hash[key]; this._count--; }
11   this.count = function() { return this._count; }
12   this.items = function(key) { if (this.contains(key)) return this._hash[key]; }
13   this.contains = function(key) { return this._hash.hasOwnProperty(key); }
14   this.clear = function() { this._hash = {}; this._count = 0; }
15 }

實現起來很簡單,我們在function中定義了一個_hash對象,該對象有一個屬性key,我們可以給這個屬性賦值,hasOwnProperty方法是javascript提供的方法,用于返回指定的對象中是否包含某個屬性。同時我們在該function中還定義了一個_count對象,用于記錄Hashtable中的數據個數,因為我們不想每次獲取Hashtable中的數據個數時都要通過一個內置的循環來計數,這樣開銷就會小一些,前面說了,哈希算法的一個基本特性就是效率高。delete語句在javascript中用于銷毀一個對象。

下面是使用該Hashtable的一些例子:

1 var hashCompany = new Hashtable();
2
3 //向Hashtable中添加鍵值對
4 function FillData(arr) {
5     hashCompany.clear();
6
7     for (var i = 0; i ﹤ arr.length - 1; i++) {
8         if (arr[i] != "") {
9             t = arr[i].split("`");
10             if (t.length ﹥ 2) {
11                 if (!hashCompany.contains(t[0].trim())) {
12                     hashCompany.add(t[0].trim(), t[1]);
13                 }
14             }
15         }
16     }
17 }
18
19 //遍歷Hashtable并取出值
20 function GetDataFromHash() {
21     var s;
22     if (hashCompany.count ﹥ 0) {
23         for (var i in hashCompany._hash) {
24             s += i + "|";
25         }
26     }
27
28     if (s.length ﹥ 0) {
29         s = s.substring(0, s.length - 2);
30     }
31
32     return s;
33 }

代碼比較簡單,這里就不再多加說明了,其中用到了一個trim函數,下面補上。

//采用正則表達式去除字符串兩端的空格,匿名函數用于擴展String對象的方法
String.prototype.trim = function() { return this.replace(/(^\s*)|(\s*$)/g, ""); }

上述就是小編為大家分享的Javascript中怎么實現一個偽哈希表了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开封市| 龙里县| 天台县| 田东县| 望江县| 大悟县| 临江市| 蒙城县| 竹北市| 平江县| 安吉县| 石屏县| 惠州市| 乌鲁木齐市| 白河县| 常熟市| 大新县| 达日县| 芦溪县| 石门县| 石棉县| 大竹县| 江孜县| 墨玉县| 广西| 息烽县| 康定县| 奉节县| 海丰县| 昭平县| 无为县| 健康| 山丹县| 监利县| 会昌县| 阜新市| 龙胜| 奉化市| 渭源县| 嘉善县| 红河县|