我在下面有这个JSON对象;
[
{
XXX: "2",
YYY: "3",
ZZZ: "4"
},
{
XXX: "5",
YYY: "6",
ZZZ: "7"
},
{
XXX: "1",
YYY: "2",
ZZZ: "3"
}
]
Run Code Online (Sandbox Code Playgroud)
我想从json对象中删除YYY键值,以便新的json对象看起来像这样;
[
{
XXX: "2",
ZZZ: "4"
},
{
XXX: "5",
ZZZ: "7"
},
{
XXX: "1",
ZZZ: "3"
}
]
Run Code Online (Sandbox Code Playgroud)
我试过delete jsonObject['YYY']但这不正确.怎么能在javascript中完成?谢谢.
Jus*_*ner 55
你称之为"JSON对象"的实际上是一个JSON对象数组.您必须遍历每个成员并单独删除每个成员:
for(var i = 0; i < jsonArr.length; i++) {
delete jsonArry[i]['YYY'];
}
Run Code Online (Sandbox Code Playgroud)
另一种避免改变原始数组并使用更现代功能的解决方案(对象休息运算符和解构)
const arr = [
{
XXX: "2",
YYY: "3",
ZZZ: "4"
},
{
XXX: "5",
YYY: "6",
ZZZ: "7"
},
{
XXX: "1",
YYY: "2",
ZZZ: "3"
}
]
// destructure 'YYY' and return the other props only
const newArray = arr.map(({YYY, ...rest}) => rest)
console.log(newArray)Run Code Online (Sandbox Code Playgroud)
遍历数组中的值,并使用key删除值YYY:
var obj = [
{
XXX: "2",
YYY: "3",
ZZZ: "4"
},
{
XXX: "5",
YYY: "6",
ZZZ: "7"
},
{
XXX: "1",
YYY: "2",
ZZZ: "3"
}
];
for (var i = 0; i < obj.length; i++) {
delete obj[i].YYY
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
77839 次 |
| 最近记录: |