首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js模仿hash地图

2012-10-08 
js模仿hashmap1 感想 ???? ??? javascript作为一种弱类型的语言,我们在开发时又喜欢又憎恨,一般作为开发ja

js模仿hashmap

1 感想 ????

??? javascript作为一种弱类型的语言,我们在开发时又喜欢又憎恨,一般作为开发java的我们来说,如果总是用面向对象的开发方法去学习,结果看来这并不是一个太好的方法,而当我们用JavaScript去模仿对象时,这对你的学习会起到很大的效果。这篇文章是用JavaScript去模仿java中生成一个map,也有参考别人的地方,希望大家有更好的方法能共享起来。

?

2 实践

?

function hashmap(){var size = 0;var entry = {};this.put = function(key,value){if(!this.containKey(key)){entry[key] = value;size++;return true;}else{return false;}},this.get=function(key){if(this.containKey(key)){return entry[key];}},this.containKey = function(key){return (key in entry);},this.containValue = function(value){for( var i in entry){if(entry[i] == value ){return true;}}return false;},this.clear = function(){   this.size =0;   this.entry = {};},this.size = function (){ return size;},this.keysByArray = function(){var keys = [];for(var keyIndex in entry){keys.push(keyIndex);}return keys;},this.keysByString = function(){var keys = [];for(var keyIndex in entry){keys.push(keyIndex);}return keys.join();},this.valuesByArray = function(){var values = [];for(var valueIndex in entry){values.push(entry[valueIndex]);}return values;},this.valuesByString = function(){var values = [];for(var valueIndex in entry){values.push(entry[valueIndex]);}return values.join();},this.remove = function(key){if(this.containKey(key)){delete entry[key];size--;}}}

?

3? 希望起到抛砖引玉的效果

热点排行