鸿蒙应用示例:NEXT 中 Map 类型的使用及注意事项
在 JavaScript 中,Map 对象允许存储任何类型的键和值,提供了键值对的存储功能。在 HarmonyOS 中,Map 的使用基本遵循 JavaScript 的标准,尤其是要注意 set 赋值只能用 get 获取,而索引赋值只能用索引获取。且它们可以同时赋值但遍历的方式又不同。
【Map 对象的赋值与获取】
使用 set 方法赋值当你需要创建一个 Map 对象并为其设置初始值时,可以使用 new Map()构造函数,并传入一个由键值对组成的数组。一旦通过 set 方法设置了值,那么必须使用 get 方法来检索这些值。
复制代码
使用 Object.entries 转换为 Map 如果你有一个对象,并希望将其转换为 Map 对象,可以利用 Object.entries 方法来实现这一点。此方法将对象的所有可枚举属性转换成键值对数组,然后可以用这些数组来初始化 Map。
复制代码
使用索引赋值当处理从接口 API 返回的数据时,可能需要将 JSON 字符串直接解析为 Map。需要注意的是,虽然可以这样做,但是当尝试通过索引访问时,必须确保数据类型正确。
复制代码
【Map 的遍历】Map 对象支持多种遍历方式,这取决于你是如何赋值的。
使用 forEach 遍历对于通过 set 方法赋值的 Map,推荐使用 forEach 来进行遍历。
复制代码
使用索引遍历如果 Map 是通过索引赋值的,则应使用 Object.keys 结合 forEach 来遍历键值对。
复制代码
【完整示例】
复制代码
打印
复制代码
注意事项
• 类型一致性:确保在使用 Map 时,键和值的类型保持一致。
• 遍历方式:根据赋值方式选择正确的遍历方法。
• 错误处理:在尝试遍历非 Map 类型时,应适当处理可能出现的异常。
评论