字典数据结构(Map、WeakMap)

字典的日常使用:

中文字典我们可以根据拼音查找到汉子,并且找到汉字对应的词及解释。

字典的特点:

  1. 主要特点是一一对应的关系,{"age": 18, "name": "John"},可通过key取出value。
  2. 字典的key是不可以重复且无序的,而value可以重复 。

代码实现:

var Dictionary = function() {
    var items = {};
    // has 判断是否有某属性
    this.has = function(key) {
        // return items.hasOwnProperty(key);
        return key in items;
    }
    // set 添加新的键值对
    this.set = function(key, value) {
        items[key] = value
    } 
    // delete 删除键值对
    this.delete = function(key) {
        if(this.has(key)) {
            delete items[key];
            return true;
        }
        return false;
    }
    // get 获取键值对
    this.get = function(key) {
        if(this.has(key)) {
            return items[key];
        }
        return undefined;
    }
} 
var dictionary = new Dictionary();
dictionary.set('name','John');
dictionary.set('age','12');
console.log(dictionary.has('name'));
console.log(dictionary.has('work'));
console.log(dictionary.get('name'));
console.log(dictionary.get('work'));
console.log(dictionary.delete('name'));
console.log(dictionary.delete('work'));

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值