Javascript中的字典类

这是MyMap类的完整实现- 

示例

class MyMap {
   constructor() {
      this.container = {};
   }
   display() {
      console.log(this.container);
   }
   hasKey(key) {
      return key in this.container;
   }
   put(key, value) {
      this.container[key] = value;
   }
   delete(key) {
      if (this.hasKey(key)) {
         delete this.container[key];
         return true;
      }
      return false;
   }
   get(key) {
      return this.hasKey(key) ? this.container[key] : undefined;
   }
   keys() {
      return Object.keys(this.container);
   }
   values() {
      let values = []; for (let key in this.container) {
         values.push(this.container[key]);
      }
      return values;
   }
   clear() {
      this.container = {};
   }
   forEach(callback) {
      for (let prop in this.container) {
         //调用回调为:callback(key,value)
         callback(prop, this.container[prop]);
      }
   }
}