JavaScript Mapの簡単な例(共有)

2354 ワード

jsでMapを書いて、機能を遍歴しています.コメントしてください.
//map.js

Array.prototype.remove = function(s) { 
  for (var i = 0; i < this.length; i++) { 
    if (s == this[i]) 
      this.splice(i, 1); 
  } 
} 
 
/** 
 * Simple Map 
 * 
 * 
 * var m = new Map(); 
 * m.put('key','value'); 
 * ... 
 * var s = ""; 
 * m.each(function(key,value,index){ 
 *   s += index+":"+ key+"="+value+"
"; * }); * alert(s); * * @author dewitt * @date 2008-05-24 */ function Map() { /** ( ) */ this.keys = new Array(); /** */ this.data = new Object(); /** * * @param {String} key * @param {Object} value */ this.put = function(key, value) { if(this.data[key] == null){ this.keys.push(key); } this.data[key] = value; }; /** * * @param {String} key * @return {Object} value */ this.get = function(key) { return this.data[key]; }; /** * * @param {String} key */ this.remove = function(key) { this.keys.remove(key); this.data[key] = null; }; /** * Map, * * @param {Function} function(key,value,index){..} */ this.each = function(fn){ if(typeof fn != 'function'){ return; } var len = this.keys.length; for(var i=0;i Test Map