HarmonyOS 鸿蒙Next JSON数据 下划线命名转驼峰命名

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

HarmonyOS 鸿蒙Next JSON数据 下划线命名转驼峰命名

在以往的项目中使用的是npm的humps 转换 但是现在貌似没有提供方法可以转
想咨询是否有可靠的方式可以实现 JSON数据 下划线命名转驼峰命名

2 回复

可以使用下面方法尝试:

underlineToHump(str: string): string {

    return str.replace(/_([a-z])/g, (match:string, group:string) => group.toUpperCase());

  }

  aboutToAppear(): void {

    let  str = 'ab_cd'

    let result = this.underlineToHump(str)

    console.log(result)

  }

更多关于HarmonyOS 鸿蒙Next JSON数据 下划线命名转驼峰命名的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙系统中,处理JSON数据时将下划线命名转换为驼峰命名,可以通过以下步骤实现:

  1. 解析JSON数据:首先,使用鸿蒙系统提供的JSON解析库(如JsonUtil)将JSON字符串解析为JsonValue对象。

  2. 遍历键值对:遍历JsonValue对象中的键值对。对于每个键,判断其是否包含下划线。

  3. 转换键名:如果键名包含下划线,将其转换为驼峰命名。例如,将"user_name"转换为"userName"

  4. 构建新对象:使用转换后的键名和原始值构建一个新的JsonObjectMap对象。

  5. 序列化回JSON:最后,将新对象序列化回JSON字符串(如果需要)。

示例代码(伪代码,具体实现需根据鸿蒙API调整):

JsonValue jsonValue = JsonUtil::parseJson(jsonString);
JsonObject jsonObject = jsonValue.getValue<JsonObject>();
JsonObject newJsonObject;
for (auto &kv : jsonObject.getEntries()) {
    string newKey = convertToCamelCase(kv.first);
    newJsonObject.put(newKey, kv.second);
}
string newJsonString = JsonUtil::toJsonStr(newJsonObject);

注意:convertToCamelCase为自定义函数,用于将下划线命名转换为驼峰命名。

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

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!