我正在使用javascript定义对象数组,并希望根据对象属性删除值。
我用了下面的代码:
var addedItems = [];
var item = {};
item["TId"] = "";
item["VNo"] = "";
item["IDate"] = "";
item["Rate"] = 22;
item["ItemId"] = 12;
item["Quantity"] = 1;
item["ItemTypeId"] = 3;
addedItems.push(item);
removeValueFromObjectByValue(addedItems,12);
function removeValueFromObjectByValue(jsonObject, value) {
jQuery.each(jsonObject, function (i, val) {
if (val.ItemId == value) // delete index
{
return;
delete jsonObject[i];
return;
}
});
}
预期结果:当我删除值时,它应该给我一个包含0个元素的数组。
实际输出:当我删除值时,我得到的数组有1个元素,元素值为null。
可以使用Object.values
和接头
。在函数内部使用JSON. parse创建原始数组的新副本
var addedItems = [];
var item = {};
item["TId"] = "";
item["VNo"] = "";
item["IDate"] = "";
item["Rate"] = 22;
item["ItemId"] = 12;
item["Quantity"] = 1;
item["ItemTypeId"] = 3;
addedItems.push(item);
function removeValueFromObjectByValue(arr, num) {
let newArr = JSON.parse(JSON.stringify(arr))
arr.forEach(function(item, index) {
let isNumPresent = Object.values(item).includes(num)
if (isNumPresent) {
newArr.splice(index, 1);
}
})
return newArr;
}
console.log(removeValueFromObjectByValue(addedItems, 12));
我正在尝试从对象数组中删除属性。 我希望var2包含这样的内容。 是否有方法将/cast转换为上述内容?换句话说,我想从对象数组中删除,并将其分配给。我该怎么做?
如何从javascript变量中删除对象/数组?
问题内容: 如何从数组中删除对象?我想删除,其中包括名称的对象从。例如: 我要实现: 问题答案: 您可以使用多种方法从数组中删除项目: 如果要删除position处的元素,请使用: 要么 您可以使用或结合使用参见MDN从数组中删除一个或多个元素,例如
问题内容: 文件: 有没有办法从数组中提取特定对象?IE如何从项数组中提取ID为23的整个项对象。 我努力了: 但是我很确定我没有正确使用’pull’。据我了解,pull将从数组中拉出字段,而不是对象。 关于如何将整个对象从数组中拉出的任何想法。 另外,我尝试在mongoose / nodejs中执行此操作,也不确定这种类型的内容是否在mongoose API中,但我找不到它。 问题答案: 尝试.
问题内容: 我需要从满足条件的数组中删除对象,我可以根据条件更新数组的对象,如下所示: 这正在工作 为了删除我正在这样做 但这不起作用,并给出此错误, ElasticsearchIllegalArgumentException [无法执行脚本]; 嵌套:ConcurrentModificationException; 错误:ElasticsearchIllegalArgumentException
假设我有这样的对象数组: 如何从每个对象中删除时间和单词属性?我的输出应该是这样的: