HarmonyOS 鸿蒙Next ArkTS里面定义的Record类型需要怎么做遍历操作?

发布于 1周前 作者 phonegap100 来自 鸿蒙OS

HarmonyOS 鸿蒙Next ArkTS里面定义的Record类型需要怎么做遍历操作?

请问一下ArkTS 里面定义的 Record 类型需要怎么做遍历操作? 在 TypeScript 中 ,Record类型的遍历可以通过如下方式进行访问:
深色代码主题
复制
const coder: Record<string, number> = {‘a’:1,‘b’:2,‘c’:3};
for(const key in coder) {
const coderi = coder[key];
console.log(key + ’ - ’ + coderi);
}
复制

但是在ArkTS中没法使用该方法,也没有找到其他好的方法。请教一下该怎么操作。

 


更多关于HarmonyOS 鸿蒙Next ArkTS里面定义的Record类型需要怎么做遍历操作?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复
Record类型的对象解析可以使用如下方式进行拼接
深色代码主题
复制
let arr: string[] = [];

Object.keys(RecordObject).forEach(key => {

  arr.push(<span class="hljs-subst">${key}</span>=<span class="hljs-subst">${params[key]}</span>)

})

let result: string = ‘?’ + arr.join("&");

更多关于HarmonyOS 鸿蒙Next ArkTS里面定义的Record类型需要怎么做遍历操作?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


深色代码主题
复制
Object.keys(coder).forEach(key => {
  console.log(`${key} - ${coder[key]}`);
})
深色代码主题
复制
      const coder: Record<string, number> = {'a':1,'b':2,'c':3};
      Object.entries(coder).forEach((value, key) => {
        console.log('value:'+value)
        console.log('key:'+key)
      });
类似 object 和 map 的取值方式, 直接 coder["a"], 如果只是输出的话, 可以通过 json 来做

在HarmonyOS鸿蒙Next ArkTS中,Record类型本质上是一个键值对集合,类似于JavaScript中的对象。遍历Record类型可以通过使用for...in循环来实现。具体方法如下:

// 假设有一个Record类型的变量
let record: Record<string, any> = {
    key1: "value1",
    key2: "value2",
    key3: 42
};

// 使用for...in循环遍历Record
for (let key in record) {
    if (record.hasOwnProperty(key)) { // 确保是record自身的属性,而不是继承的
        console.log(`Key: ${key}, Value: ${record[key]}`);
    }
}

在上述代码中,for...in循环会遍历record中的所有键。record.hasOwnProperty(key)用于检查属性是否是record对象自身的属性,而不是从原型链上继承的。这样可以避免遍历到不必要的属性。

遍历过程中,可以通过record[key]来获取对应的值,并进行相应处理。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部