Map 相关的函数与属性:

  • map.clear() – 移除 Map 对象的所有键/值对 。
  • map.set() – 设置键值对,返回该 Map 对象。
  • map.get() – 返回键对应的值,如果不存在,则返回 undefined。
  • map.has() – 返回一个布尔值,用于判断 Map 中是否包含键对应的值。
  • map.delete() – 删除 Map 中的元素,删除成功返回 true,失败返回 false。
  • map.size – 返回 Map 对象键/值对的数量。
  • map.keys() - 返回一个 Iterator 对象, 包含了 Map 对象中每个元素的键 。
  • map.values() – 返回一个新的Iterator对象,包含了Map对象中每个元素的值 。

 

迭代 Map

Map 对象中的元素是按顺序插入的,我们可以迭代 Map 对象,每一次迭代返回 [key, value] 数组。

TypeScript使用 for...of 来实现迭代:

        // map中的迭代
        let keys:Iterable<string> = map.keys();
        // 迭代map中的所有键
        for(let key of map.keys()) {
            console.log("keys",key);
        }
        // 迭代map中的所有值
        for(let value of map.values()) {
            console.log("values",value);
        }
        // 迭代map 
        for(let entry of map.entries()){
            console.log("entries1",entry[0], entry[1]);
        }
        for(let [key,value] of map.entries()) {
            console.log("entries2",key, value);
        }
 
        // 遍历map
        map.forEach((value:number,key:string,map:Map<string,number>)=>{
            console.log("forEach",key,value);
        });
 
        // 清空map
        map.clear();

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐