[其他资源] Ts-Map 类的使用

[复制链接]
980 |4
aojoo 发表于 2023-3-21 10:43:43 | 显示全部楼层 |阅读模式
本帖最后由 aojoo 于 2023-3-21 10:56 编辑

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();


视频教程

回复

使用道具 举报

逝水无痕 发表于 2023-3-21 10:45:16 | 显示全部楼层
Map不能被序列化噢~
回复

使用道具 举报

aojoo楼主 发表于 2023-3-21 11:00:59 | 显示全部楼层
逝水无痕 发表于 2023-3-21 10:45
Map不能被序列化噢~

啥意思,我从其他地方复制的。你给整一个用法出来,把不能用的删掉
回复

使用道具 举报

逝水无痕 发表于 2023-3-23 09:41:58 | 显示全部楼层
aojoo 发表于 2023-3-21 11:00
啥意思,我从其他地方复制的。你给整一个用法出来,把不能用的删掉

就是你无法通过 JSON.stringify( Map() ) 去序列化该类型对象
回复

使用道具 举报

天启 发表于 2023-6-9 18:23:24 | 显示全部楼层
逝水无痕 发表于 2023-3-23 09:41
就是你无法通过 JSON.stringify( Map() ) 去序列化该类型对象

序列化是干啥的呀
回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表