IE10 이하에서는 Map 사용시
'Map'이(가) 정의되지 않았습니다. 라는 오류가 난다.
해결방법
1. util.Map.js 생성
CustomMap = function(){
this.map = new Object();
};
CustomMap.prototype = {
put : function(key, value){
this.map[key] = value;
},
get : function(key){
if(this.size() == 0)
return '';
return this.map[key];
},
containsKey : function(key){
return key in this.map;
},
containsValue : function(value){
for(var prop in this.map){
if(this.map[prop] == value) return true;
};
return false;
},
isEmpty : function(){
return (this.size() == 0);
},
clear : function(){
for(var prop in this.map){
delete this.map[prop];
};
},
remove : function(key){
delete this.map[key];
},
keys : function(){
var keys = new Array();
for(var prop in this.map){
keys.push(prop);
};
return keys;
},
values : function(){
var values = new Array();
for(var prop in this.map){
values.push(this.map[prop]);
};
return values;
},
size : function(){
var count = 0;
for (var prop in this.map) {
count++;
};
return count;
}
};
2. 사용법
var map;
if(typeof Map != "undefined"){
map = new Map();
}else{
map = new CustomMap();
}
'개발 > javascript & jquery' 카테고리의 다른 글
IE9 이하 window.btoa (base64) (0) | 2018.07.12 |
---|---|
테이블 헤더 스크롤 고정 (0) | 2018.07.11 |
jqplot 옵션 정리 (0) | 2018.07.11 |