在javascript中使用索引值删除对象或做出反应[重复]

Posted

技术标签:

【中文标题】在javascript中使用索引值删除对象或做出反应[重复]【英文标题】:Remove the objects using index value in javascript or react [duplicate] 【发布时间】:2021-01-18 04:50:33 【问题描述】:

使用 javascript 中的索引值或 react 删除对象

我有如下的对象列表。使用索引值删除对象

0: Id: "", value: "aaa" 
1: Id: "", value: "bbb" 
2: Id: "", value: "ccc" 
3: Id: "", value: "ddd" 
4: Id: "", value: "eee" 

使用删除的对象:

   var newArray = delete resultObject[0];
                
                this.setState( result: resultObject);
             
                 console.log("setState  ",this.state.result); 

实际结果 结果显示为

[ empty,…, …, …, …] 
 
1: Id: "", value: "bbb" 
2: Id: "", value: "ccc" 
3: Id: "", value: "ddd" 
4: Id: "", value: "eee" 

如何使从0开始,删除索引0后。

预期结果

0: Id: "", value: "bbb" 
1: Id: "", value: "ccc" 
2: Id: "", value: "ddd" 
3: Id: "", value: "eee" 

删除后我尝试让索引从 0 开始,而不是从 1 开始

【问题讨论】:

【参考方案1】:

您可以使用Array.filter

let data = [Id: "", value: "aaa" , Id: "", value: "bbb" , Id: "", value: "ccc" , Id: "", value: "ddd" , Id: "", value: "eee" ];

const filterByIndex = (data, index) => data.filter((d, i) => i !== index);

console.log(filterByIndex(data, 0))
.as-console-wrapper 
  max-height: 100% !important;

【讨论】:

【参考方案2】:

您可以使用array.filter清除数组中的所有空值

let resultsObject = [
    Id: "", value: "aaa",
    Id: "", value: "bbb",
    Id: "", value: "ccc",
    Id: "", value: "ddd",
    Id: "", value: "eee"
];
delete resultsObject[0];
console.log(resultsObject.filter(function () 
    return true;
));

【讨论】:

以上是关于在javascript中使用索引值删除对象或做出反应[重复]的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 索引关联对象数组增删改查循环

如何使用 jquery 或 javascript 删除索引处的行? [复制]

JavaScript Array 对象参考手册

javascript 如何在javascript数组中按键和值查找对象的索引

JavaScript中的数组创建

JavaScript面向对象怎样删除标签页?