merged private server and console to private-cloud
This commit is contained in:
120
console/mini_poem/mem/map.js
Normal file
120
console/mini_poem/mem/map.js
Normal file
@@ -0,0 +1,120 @@
|
||||
/*
|
||||
* Created by Strawmanbobi
|
||||
* 2014-08-30
|
||||
*/
|
||||
|
||||
function Map() {
|
||||
this.elements = [];
|
||||
|
||||
this.size = function() {
|
||||
return this.elements.length;
|
||||
};
|
||||
|
||||
this.isEmpty = function() {
|
||||
return (this.elements.length < 1);
|
||||
};
|
||||
|
||||
this.clear = function() {
|
||||
this.elements = [];
|
||||
};
|
||||
|
||||
this.put = function(_key, _value) {
|
||||
this.elements.push( {
|
||||
key : _key,
|
||||
value : _value
|
||||
});
|
||||
};
|
||||
|
||||
this.remove = function(_key) {
|
||||
var bln = false;
|
||||
try {
|
||||
for (i = 0; i < this.elements.length; i++) {
|
||||
if (this.elements[i].key == _key) {
|
||||
this.elements.splice(i, 1);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
bln = false;
|
||||
}
|
||||
return bln;
|
||||
};
|
||||
|
||||
this.get = function(_key) {
|
||||
try {
|
||||
for (i = 0; i < this.elements.length; i++) {
|
||||
if (this.elements[i].key == _key) {
|
||||
return this.elements[i].value;
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
this.set = function(_key, _value) {
|
||||
for(i = 0; i < this.elements.length; i++) {
|
||||
if (this.elements[i].key == _key) {
|
||||
this.elements[i].value = _value;
|
||||
return;
|
||||
}
|
||||
}
|
||||
this.elements.push({
|
||||
key : _key,
|
||||
value : _value
|
||||
});
|
||||
};
|
||||
|
||||
this.element = function(_index) {
|
||||
if (_index < 0 || _index >= this.elements.length) {
|
||||
return null;
|
||||
}
|
||||
return this.elements[_index];
|
||||
};
|
||||
|
||||
this.containsKey = function(_key) {
|
||||
var bln = false;
|
||||
try {
|
||||
for (i = 0; i < this.elements.length; i++) {
|
||||
if (this.elements[i].key == _key) {
|
||||
bln = true;
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
bln = false;
|
||||
}
|
||||
return bln;
|
||||
};
|
||||
|
||||
this.containsValue = function(_value) {
|
||||
var bln = false;
|
||||
try {
|
||||
for (i = 0; i < this.elements.length; i++) {
|
||||
if (this.elements[i].value == _value) {
|
||||
bln = true;
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
bln = false;
|
||||
}
|
||||
return bln;
|
||||
};
|
||||
|
||||
this.values = function() {
|
||||
var arr = [];
|
||||
for (i = 0; i < this.elements.length; i++) {
|
||||
arr.push(this.elements[i].value);
|
||||
}
|
||||
return arr;
|
||||
};
|
||||
|
||||
this.keys = function() {
|
||||
var arr = [];
|
||||
for (i = 0; i < this.elements.length; i++) {
|
||||
arr.push(this.elements[i].key);
|
||||
}
|
||||
return arr;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = Map;
|
||||
Reference in New Issue
Block a user