Javascript實(shí)現(xiàn)的Map集合工具類完整實(shí)例
本文實(shí)例講述了Javascript實(shí)現(xiàn)的Map集合工具類。分享給大家供大家參考。具體如下:
var Map = function(){
// 構(gòu)造entry實(shí)體
var Entry = function(key, value){
this.key = key;
this.value = value;
}
this.entries = new Array();
// 構(gòu)造put方法在數(shù)組中放入一個(gè)Entry
this.put = function(key, value){
// 數(shù)組中已存在就不放入
for (var i = 0; i < this.size(); i++) {
if (this.entries[i].key === key) {
return false;
}
}
this.entries.push(new Entry(key, value));
};
// 模擬get方法
this.get = function(key){
for (var i = 0; i < this.size(); i++) {
if (this.entries[i].key === key) {
return this.entries[i].value;
}
}
return null;
};
// 查找下標(biāo)值
this.indexOf = function(key){
var index = -1;
for (var i = 0; i < this.size(); i++) {
if (this.entries[i].key === key) {
index = i;
break;
}
}
return index;
}
// 刪除一個(gè)元素
this.remove = function(key){
var index = this.indexOf(key);
if (index != -1) {
this.entries.splice(index, 1);
}
}
// 取得map長(zhǎng)度
this.size = function(){
return this.entries.length;
};
// 重新設(shè)置鍵值對(duì)
this.setValue = function(key, value){
var index = this.indexOf(key);
if (index != -1) {
this.entries[i].value = value;
};
};
// 是否為空map
this.isEmpty = function(){
return this.size() <= 0;
};
//清空map ;
this.clear = function(){
this.entries = [];
};
// 得到entry實(shí)體
this.getEntry = function(index){
if (index >= 0 && index < this.size()) {
return this.entries[index];
}
return null;
}
this.toString = function(){
var str = "[";
for (var i = 0; i < this.size(); i++) {
str += this.getEntry(i).key + "=" + this.getEntry(i).value + ",";
}
// 去除最后一個(gè)","
str = str.substring(0, str.length - 1);
str += "]";
return str;
};
}
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
- JavaScript數(shù)據(jù)結(jié)構(gòu)與算法之集合(Set)
- js中通過(guò)getElementsByName訪問(wèn)name集合對(duì)象的方法
- JSON--List集合轉(zhuǎn)換成JSON對(duì)象詳解
- jquery遍歷json對(duì)象集合詳解
- 詳談js遍歷集合(Array,Map,Set)
- javascript 實(shí)現(xiàn)map集合
- jQuery學(xué)習(xí)7 操作JavaScript對(duì)象和集合的函數(shù)
- JS實(shí)現(xiàn)的集合去重,交集,并集,差集功能示例
- JSON 與對(duì)象、集合之間的轉(zhuǎn)換的示例
- JS實(shí)現(xiàn)集合的交集、補(bǔ)集、差集、去重運(yùn)算示例【ES5與ES6寫法】
- JS中的算法與數(shù)據(jù)結(jié)構(gòu)之集合(Set)實(shí)例詳解
相關(guān)文章
JavaScript仿京東實(shí)現(xiàn)秒殺倒計(jì)時(shí)案例詳解
這篇文章主要為大家詳細(xì)介紹了如何利用JavaScript實(shí)現(xiàn)京東秒殺倒計(jì)時(shí)效果,文中示例代碼介紹的非常詳細(xì),感興趣的小伙伴們可以參考一下2022-03-03
javascript獲取鼠標(biāo)點(diǎn)擊元素對(duì)象(示例代碼)
本篇文章主要介紹了利用javascript獲取鼠標(biāo)點(diǎn)擊元素對(duì)象的示例代碼。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-12-12
JavaScript數(shù)據(jù)庫(kù)TaffyDB用法實(shí)例分析
這篇文章主要介紹了JavaScript數(shù)據(jù)庫(kù)TaffyDB用法,實(shí)例分析了TaffyDB數(shù)據(jù)庫(kù)的定義、查詢、更新、刪除等操作的相關(guān)使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07
Bootstrap布局組件應(yīng)用實(shí)例講解
這篇文章主要針對(duì)Bootstrap布局組件應(yīng)用進(jìn)行實(shí)例講解,感興趣的小伙伴們可以參考一下2016-02-02
Javascript動(dòng)態(tài)創(chuàng)建div的方法
這篇文章主要介紹了Javascript動(dòng)態(tài)創(chuàng)建div的方法,是javascript節(jié)點(diǎn)操作的典型應(yīng)用,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-02-02
javascript實(shí)現(xiàn)簡(jiǎn)單的二級(jí)聯(lián)動(dòng)
這篇文章主要介紹了javascript實(shí)現(xiàn)簡(jiǎn)單的二級(jí)聯(lián)動(dòng),非常的實(shí)用,需要的朋友可以參考下2015-03-03
Javascript 多物體運(yùn)動(dòng)的實(shí)現(xiàn)
這篇文章主要介紹了Javascript 多物體運(yùn)動(dòng)的實(shí)現(xiàn),需要的朋友可以參考下2014-12-12

