习惯使用java的HashMap,js封装数据的时候也想用map集合,就找了一个封装好的js版的HashMap.
function HashMap() { /** Map大小* */ var size = 0; /** 对象* */ var entry = new Object(); /** Map的存put方法* */ this.put = function(key, value) { if (!this.containsKey(key)) { size++; entry[key] = value; } } /** Map取get方法* */ this.get = function(key) { return this.containsKey(key) ? entry[key] : null; } /** Map删除remove方法* */ this.remove = function(key) { if (this.containsKey(key) && (delete entry[key])) { size--; } } /** 是否包含Key* */ this.containsKey = function(key) { return (key in entry); } /** 是否包含Value* */ this.containsValue = function(value) { for ( var prop in entry) { if (entry[prop] == value) { return true; } } return false; } /** 所有的Value* */ this.values = function() { var values = new Array(); for ( var prop in entry) { values.push(entry[prop]); } return values; } /** 所有的 Key* */ this.keys = function() { var keys = new Array(); for ( var prop in entry) { keys.push(prop); } return keys; } /** Map size* */ this.size = function() { return size; } /** 清空Map* */ this.clear = function() { size = 0; entry = new Object(); } }
文章评论
我真该跟你多学学