Typescript 字典类型

本文介绍了TypeScript中字典类型的使用,包括通过键值对存储元素、添加元素、删除元素、检查元素存在以及获取所有值的方法。通过示例代码展示了字典操作的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

集合、字典和散列表可以存储不重复的值。字典和集合相似,集合以[值,值]的形式存储元素,字典是以[键,值]的形式来存储元素,字典也叫做映射

  • set(key,value) 添加元素
  set(key: any, val: any) {
    this.items[key] = val;
  }
  • delete(key) 通过键删除元素
  delete(key: any): boolean {
    if (this.has(key)) {
      delete this.items[key];
    }
    return false;
  }
  • has(key) 根据键判断某个元素是否存在于字典
  has(key: any): boolean {
    return this.items.hasOwnProperty(key);
  }
  • values() 将所有元素以数组形式返回
values(): any[] {
    let values: any[] = [];
    for (let k in this.items) {
      if (this.has(k)) {
        values.push(this.items[k]);
      }
    }
    return values;
  }

完整代码

export default class Dictionary {
  items: object;
  constructor() {
    this.items = {};
  }
  has(key: any): boolean {
    return this.items.hasOwnProperty(key);
  }
  set(key: any, val: any) {
    this.items[key] = val;
  }
  delete(key: any): boolean {
    if (this.has(key)) {
      delete this.items[key];
    }
    return false;
  }
  get(key: any): any {
    return this.has(key) ? this.items[key] : undefined;
  }
  values(): any[] {
    let values: any[] = [];
    for (let k in this.items) {
      if (this.has(k)) {
        values.push(this.items[k]);
      }
    }
    return values;
  }
}
  • 测试代码
let dic = new Dictionary();
dic.set("angular", "javascrip");
dic.set("spring", "java");
dic.set("flask", "python");

console.log(dic.values());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值