javascript - 将返回的 JSON 对象属性转换为(较低的第一个)camelCase

我从这样的 API 返回 JSON:

Contacts: [{ GivenName: "Matt", FamilyName: "Berry" }]

为了与我的代码风格保持一致(camelCase - 小写首字母),我想转换数组以生成以下内容:

 contacts: [{ givenName: "Matt", familyName: "Berry" }]

最简单/最好的方法是什么?创建一个新的联系人对象并遍历返回数组中的所有联系人?

var jsonContacts = json["Contacts"],
    contacts= [];
        
_.each(jsonContacts , function(item){
    var contact = new Contact( item.GivenName, item.FamilyName );
    contacts.push(contact);
});

或者我可以映射原始数组或以某种方式对其进行转换吗?

最佳答案

如果您使用 lodash而不是下划线,这样可以:

_.mapKeys(obj, (v, k) => _.camelCase(k))

这会将 TitleCasesnake_case 都转换为 camelCase。请注意,它不是递归的。

https://stackoverflow.com/questions/12931828/

相关文章:

c# - 将 JSON 字符串中的数据覆盖到现有对象实例

java - 如何为 Gson 编写自定义 JSON 反序列化器?

sql - PostgreSQL:从 JSON 列中删除属性

android - 从 Android 上的 URL 简单解析 JSON 并显示在 ListView

python - 尝试从 Django 中的 POST 解析 `request.body`

c# - 将 JSON 转换为数据表

ruby - 从 json 到 ruby​​ 哈希?

ruby-on-rails - 无法在 Ubuntu 上使用 ruby​​ 2.2.3 安装 jso

json - 如何使用 Gradle 将 Boon 或 Jackson JSON 解析器添加到 An

java - 使用 Jackson 反序列化枚举