js中生成map對象的方法
更新時間:2014年01月09日 16:24:02 作者:
生成map對象的方法或許會有很多,在本文將為大家詳細(xì)介紹下使用js是如何做到的,感興趣的朋友不要錯過
復(fù)制代碼 代碼如下:
var Map = function(){
this._entrys = new Array();
this.put = function(key, value){
if (key == null || key == undefined) {
return;
}
var index = this._getIndex(key);
if (index == -1) {
var entry = new Object();
entry.key = key;
entry.value = value;
this._entrys[this._entrys.length] = entry;
}else{
this._entrys[index].value = value;
}
};
this.get = function(key){
var index = this._getIndex(key);
return (index != -1) ? this._entrys[index].value : null;
};
this.remove = function(key){
var index = this._getIndex(key);
if (index != -1) {
this._entrys.splice(index, 1);
}
};
this.clear = function(){
this._entrys.length = 0;;
};
this.contains = function(key){
var index = this._getIndex(key);
return (index != -1) ? true : false;
};
this.getCount = function(){
return this._entrys.length;
};
this.getEntrys = function(){
return this._entrys;
};
this._getIndex = function(key){
if (key == null || key == undefined) {
return -1;
}
var _length = this._entrys.length;
for (var i = 0; i < _length; i++) {
var entry = this._entrys[i];
if (entry == null || entry == undefined) {
continue;
}
if (entry.key === key) {//equal
return i;
}
}
return -1;
};
this._toString = function(){
var string = "";
for (var i = 0; i < this.getEntrys().length; i++) {
string += this.getEntrys()[i].key+"::"+this.getEntrys()[i].value;
if(i!=this.getEntrys().length-1){
string += ";";
}
}
return string;
};
};
相關(guān)文章
一起盤點JavaScript中一些強(qiáng)大的運算符
javascript中的運算符大多由標(biāo)點符號表示,少數(shù)由關(guān)鍵字表示,它們的語法言簡意賅,它們的數(shù)量卻著實不少,下面這篇文章主要給大家介紹了關(guān)于JavaScript中一些強(qiáng)大的運算符的相關(guān)資料,需要的朋友可以參考下2021-11-11
Javascript和HTML5利用canvas構(gòu)建Web五子棋游戲?qū)崿F(xiàn)算法
這只是一個簡單的JAVAscript和HTML5小程序,沒有實現(xiàn)人機(jī)對戰(zhàn),五子棋棋盤落子點對應(yīng)的二維數(shù)組,具體的實現(xiàn)算法如下,感興趣的朋友可以參考下哈,希望對大家有所幫助2013-07-07
JavaScript實現(xiàn)時間格式的切割與轉(zhuǎn)換
這篇文章主要為大家詳細(xì)介紹了使用JavaScript實現(xiàn)時間格式的切割與轉(zhuǎn)換的相關(guān)知識,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考一下2024-04-04

