【发布时间】:2018-03-17 20:06:52
【问题描述】:
我搜索了很多关于如何从我的 JSON 对象中删除元素的问题。
这是我的简化 JSON 来说明我的要求。
捆绑:
{
"resourceType": "Bundle",
"meta": {
"lastUpdated": "2017-10-06T04:42:22.411Z"
},
"type": "searchset",
"total": "0",
"entry": [
{
"_id": "59d5739e668e9e3fd29aeb0d",
"resource": {
"id": "59d5739e668e9e3fd29aeb0d"
},
"__v": 0
},
{
"_id": "59d6a3fae4b45d50c5ffd4f7",
"resource": {
"id": "59d6a3fae4b45d50c5ffd4f7"
},
"__v": 0
},
{
"_id": "59d6a831e4b45d50c5ffd4fa",
"resource": {
"id": "59d6a831e4b45d50c5ffd4fa"
},
"__v": 0
}
]
}
如何删除所有 entry._id 和 entry.__v? 我试过这些,但没有用。
delete bundle.meta; <-- meta is on level 1, it works.
delete bundle.entry._id; <-- not working. The _id under entry
delete bundle.__v; <-- not working. The __v is also under entry
如何在每个条目下添加一个新元素,例如下面的“全名”
我想要的结果 - 删除“_id”和“__v”,然后将“全名”添加到条目[]:
{
"resourceType": "Bundle",
"meta": {
"lastUpdated": "2017-10-06T04:42:22.411Z"
},
"type": "searchset",
"total": "0",
"entry": [
{
"fullname": "Apple",
"resource": {
"id": "59d5739e668e9e3fd29aeb0d",
}
},
{
"fullname": "Orange",
"resource": {
"id": "59d6a3fae4b45d50c5ffd4f7"
},
}, ......
我尝试了很多方法并在 Google 上搜索了很多。感谢您的帮助!
感谢 Vivek 的回答。它有效。
for (var i = 0; i < bundle.entry.length; i++) {
delete bundle.entry[i]._id;
delete bundle.entry[i].__v;
bundle.entry[i].fullname = "Test";
}
【问题讨论】:
-
“我想要的结果-删除'_id'和'__v',然后将'fullname'添加到条目[]”
"fullname"属性值是如何确定的? -
您无法从JSON object 中删除元素...
-
嗨 guest271314,假设 entry[i].fullname = entry[i].resource.id 的最后 4 位;感谢您的帮助。
标签: javascript json node.js angular