在 JSON 中用 2 个值整齐地表示对象数组的方法?

Way to neatly represent array of objects with 2 values in JSON?

我有这样的 JSON 格式的数据:

"members": [
            "admin@test.com",
            "user@test.com",
            "guest_test.com@##internalservicedomain.test.com##"
        ]

我想添加角色:

admin is administrator
user  is member
guest is guest

最好的存储方式是什么?

我可以这样做:

"members": [
                {name: "admin@test.com", role: "administrator"},
                {name: "user@test.com",  role: "member"},
                {name: "guest_test.com@##internalservicedomain.test.com##", role: "guest"}
            ]

或者像这样:

"members": [
                "administrators": ["admin@test.com"],
                "users": ["user@test.com"],
                "guests: ["guest_test.com@##internalservicedomain.test.com##"]
            ]

但我不喜欢那些解决方案,有没有更简洁的方式来表示它?我更喜欢第一个选项,因为那样我可以更轻松地遍历元素,但开销很糟糕,第二个选项看起来更好,但迭代起来似乎很复杂。

我认为这个选项比较正确

"members": [
                {name: "admin@test.com", role: "administrator"},
                {name: "user@test.com",  role: "member"},
                {name: "guest_test.com@##internalservicedomain.test.com##", role: "guest"}
            ]

这样你不仅可以更好地迭代,而且如果你在未来添加新角色,它会更容易适应。

最终你可以把角色 "A" 给管理员,"M" 给成员等等来减少一些 kbs...