Javascript 删除循环内的对象文字项
Javascript deleting object literal item(s) inside loop
嘿,我正在尝试删除对象中的一些项目:
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
但是,这似乎并没有删除项目 environment 正弦,即 #1 和 bomDescription 是 #0.
我也试过:
j[0].pop()
j.data[0].pop()
j.data[0].splice(1, 1)
以上哪项不可行或导致错误。
我做错了什么?
如果您的对象看起来像这样(从该图像看起来)。
const j = {
data: {
bomDescription: "hjtyj",
environment: 2,
...
}
}
然后要删除 environment
属性 你可以使用 delete
这样的语句。
const j = {
data: {
bomDescription: "hjtyj",
environment: 2
}
}
console.log(j.data);
delete j.data.environment;
console.log(j.data);
编辑
要根据其值删除 属性,您可以执行此操作。
const j = {
data: {
bomDescription: "hjtyj",
environment: 2
}
}
const removePropertyByValue = (obj, value) => {
for (const prop in obj) {
if (obj.hasOwnProperty(prop) && obj[prop] === value) {
delete obj[prop];
}
}
}
console.log(j.data);
removePropertyByValue(j.data, 2);
console.log(j.data);
编辑二
如果数据 属性 是一个对象数组,那么您可以这样做。
const j = {
data: [{
bomDescription: "hjtyj",
environment: 2
}]
}
const removePropertyByValue = (obj, value) => {
for (const prop in obj) {
if (obj.hasOwnProperty(prop) && obj[prop] === value) {
delete obj[prop];
}
}
}
console.log(j.data[0]);
removePropertyByValue(j.data[0], 2);
console.log(j.data[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
但是,这似乎并没有删除项目 environment 正弦,即 #1 和 bomDescription 是 #0.
我也试过:
j[0].pop()
j.data[0].pop()
j.data[0].splice(1, 1)
以上哪项不可行或导致错误。
我做错了什么?
如果您的对象看起来像这样(从该图像看起来)。
const j = {
data: {
bomDescription: "hjtyj",
environment: 2,
...
}
}
然后要删除 environment
属性 你可以使用 delete
这样的语句。
const j = {
data: {
bomDescription: "hjtyj",
environment: 2
}
}
console.log(j.data);
delete j.data.environment;
console.log(j.data);
编辑
要根据其值删除 属性,您可以执行此操作。
const j = {
data: {
bomDescription: "hjtyj",
environment: 2
}
}
const removePropertyByValue = (obj, value) => {
for (const prop in obj) {
if (obj.hasOwnProperty(prop) && obj[prop] === value) {
delete obj[prop];
}
}
}
console.log(j.data);
removePropertyByValue(j.data, 2);
console.log(j.data);
编辑二
如果数据 属性 是一个对象数组,那么您可以这样做。
const j = {
data: [{
bomDescription: "hjtyj",
environment: 2
}]
}
const removePropertyByValue = (obj, value) => {
for (const prop in obj) {
if (obj.hasOwnProperty(prop) && obj[prop] === value) {
delete obj[prop];
}
}
}
console.log(j.data[0]);
removePropertyByValue(j.data[0], 2);
console.log(j.data[0]);