>  기사  >  웹 프론트엔드  >  js_javascript 스킬로 맵 객체를 생성하는 방법

js_javascript 스킬로 맵 객체를 생성하는 방법

WBOY
WBOY원래의
2016-05-16 17:04:351402검색
复제대码 代码如下:

var Map = function(){
this._entrys = new 정렬();

this.put = 함수(키, 값){
if (키 == null || 키 == 정의되지 않음) {
return;
}
var index = this._getIndex(key);
if (index == -1) {
var item = new Object();
entry.key = 키;
항목.값 = 값;
this._entrys[this._entrys.length] = 항목;
}else{
this._entrys[index].value = value;
}
};
this.get = function(key){
var index = this._getIndex(key);
반환(색인 != -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);
반환(색인 != -1) ? 사실 : 거짓;
};
this.getCount = function(){
return this._entrys.length;
};
this.getEntrys = function(){
return this._entrys;
};
this._getIndex = function(key){
if (key == null || key == undefine) {
return -1;
}
var _length = this._entrys.length;
for (var i = 0; i < _length; i ) {
var item = this._entrys[i];
if (항목 == null || 항목 == 정의되지 않음) {
계속;
}
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 ].값;
if(i!=this.getEntrys().length-1){
string = ";";
}
}
문자열 반환;
};
};
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.