Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javaScript中从数组中删除项_Javascript_Angularjs - Fatal编程技术网

如何在javaScript中从数组中删除项

如何在javaScript中从数组中删除项,javascript,angularjs,Javascript,Angularjs,我需要删除阵列中的特定项。以下是阵列(状态) 0:{id:5,说明:“分配”} 1:{id:8,说明:“商业案例审查”} 2:{id:4,说明:“已取消”} 3:{id:3,说明:“已关闭”} 4:{id:6,说明:“确认”} 5:{id:7,说明:“未启动”} 6:{id:2,说明:“暂停”} 7:{id:18,说明:“待CEMT批准”} 8:{id:9,说明:“问题陈述审查”} 9:{id:10,说明:“审查委员会”} 代码: forEach状态(功能(ap) {if(ap.descript

我需要删除阵列中的特定项。以下是阵列(状态)

0:{id:5,说明:“分配”}
1:{id:8,说明:“商业案例审查”}
2:{id:4,说明:“已取消”}
3:{id:3,说明:“已关闭”}
4:{id:6,说明:“确认”}
5:{id:7,说明:“未启动”}
6:{id:2,说明:“暂停”}
7:{id:18,说明:“待CEMT批准”}
8:{id:9,说明:“问题陈述审查”}
9:{id:10,说明:“审查委员会”}
代码:
forEach状态(功能(ap)
{if(ap.description!=“未启动”
&&美联社描述!=“审查委员会”
&&ap.description!=“已取消”
&&ap.description!=“商业案例审查”
&&ap.description!=“问题陈述回顾”
) 
{
状态。拼接(状态。索引(ap),1);
}
})
输出

业务案例审查、取消、确认、未启动、待定 CEMT批准、问题陈述审查、审查委员会。渴望的 输出:业务案例审查、取消、未启动、问题陈述 审查,审查委员会


在检查删除以下数组中的项后的条件是否会移动到上一个项索引,因为当前项不会来进行验证,这是导致问题的原因。有人可以在这方面提供帮助。

您可以使用filter方法()

例如:

array.filter(element => element.description !== "Business Case Review")

将返回一个新数组,其中包含除“Business Case Review”作为说明的对象之外的所有对象

将筛选器定义为数组,然后使用该筛选器筛选数组,如下所示:

const filters = [
'Not Started',
'Review Board', 
'Cancelled',
'Business Case Review',
'Problem Statement Review'
]

var filteredResult = yourArray.filter(element => !filters.includes(element.description))
let状态=[
{id:5,说明:“分配”},
{id:8,说明:“商业案例审查”},
{id:4,说明:“已取消”},
{id:3,description:“Closed”},
{id:6,description:“Confirm”},
{id:7,说明:“未启动”},
{id:2,说明:“暂停”},
{id:18,说明:“待CEMT批准”},
{id:9,描述:“问题陈述回顾”},
{id:10,说明:“审查委员会”}
];
让ListOfReveItemIndex=[]
for(让index=0;index{
拼接状态(索引1);
});
日志(“状态:”,状态);

use也许你可以使用一个映射来代替数组……当我作为一个单独的程序执行时,它是工作的,但是当我添加到我的项目代码并进行grunt构建时,它失败了,你能帮助我为什么grunt构建失败吗?>>Uglifying source.tmp/concat/scripts/scripts.js失败了。警告:丑化失败。意外标记:运算符(>)。使用了.tmp/concat/scripts/scripts.js中的第6152行--force,继续。警告:无法读取undefined Used--force的属性“min”,继续。@rajitmp尝试运行
grunt--verbose--stack--debug
它说了什么?
let Status = [
          {id: 5, description: "Assign"},
          {id: 8, description: "Business Case Review"},
          {id: 4, description: "Cancelled"},
          {id: 3, description: "Closed"},
          {id: 6, description: "Confirm"},
          {id: 7, description: "Not Started"},
          {id: 2, description: "On Hold"},
          {id: 18, description: "Pending CEMT Approval"},
          {id: 9, description: "Problem Statement Review"},
          {id: 10, description: "Review Board"}
        ];
        let listOfRemoveItemIndex = []
        for (let index = 0; index < Status.length; index++) {
          const ap = Status[index];
          if ( ap.description != 'Not Started' && ap.description !='Review Board' && ap.description != 'Cancelled' && ap.description !='Business Case Review' && ap.description !='Problem Statement Review') 
                {
                  listOfRemoveItemIndex.push(index);

                }
        }
        listOfRemoveItemIndex.forEach((index) => {
          Status.splice(index, 1);
        });
        console.log(" Status : ", Status);