Javascript正在删除循环中的对象文字项
嘿,我正在尝试删除对象中的一些项目:Javascript正在删除循环中的对象文字项,javascript,object,stack,literals,splice,Javascript,Object,Stack,Literals,Splice,嘿,我正在尝试删除对象中的一些项目: if (e = j[a].apply(j, g), e !== c && e !== j) $.each(j.data[0], function (key, value) { console.log(key, value); j.data.splice(1, 1); }); return h = e, !1 但是,这似乎不会删除环境项,因为它是#1,而bomDescription是#0 我还尝
if (e = j[a].apply(j, g), e !== c && e !== j)
$.each(j.data[0], function (key, value) {
console.log(key, value);
j.data.splice(1, 1);
});
return h = e, !1
但是,这似乎不会删除环境项,因为它是#1,而bomDescription是#0
我还尝试:
j[0].pop()
j.data[0].pop()
j.data[0]。拼接(1,1)
以上哪一项不起作用或导致错误
我做错了什么?如果您的对象看起来像这样(从该图像可以看出) 然后,要删除
environment
属性,您可以像这样使用delete
语句
const j={
数据:{
说明:“hjtyj”,
环境:2
}
}
console.log(j.data);
删除j.data.environment;
console.log(j.data)代码>数据[0]
的内容是对象还是数组?你的标题是“object”,但你的代码显示了一个数组。@Mark\M我以为它是object literalsb,但你调用的是splice()
这是一个数组方法。那么我将回到我的OP中的最后一句话-我做错了什么?:)谢谢你的示例-但是-我不知道我要删除的项目的名称(键)。@StealthRT然后根据你要删除它的内容?它将是一个数字,所以在我的示例中,我将静态数字设置为1。@StealthRT很抱歉,但我不明白。数字是多少?对象属性没有排序。你的意思是要删除以数字作为其值的属性吗?是的@matus我将检查something=key是否存在,然后删除它。
const j = {
data: {
bomDescription: "hjtyj",
environment: 2,
...
}
}