Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.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 使用forEach删除对象';s属性失败_Javascript_Ecmascript 6 - Fatal编程技术网

Javascript 使用forEach删除对象';s属性失败

Javascript 使用forEach删除对象';s属性失败,javascript,ecmascript-6,Javascript,Ecmascript 6,我下面的代码有什么问题?如何删除对象名称属性的最后两个数组 let arr = [{id:1,name:'sit'},{id:2,name:'stand'},{id:3,name:'bark'}] let abc = arr.forEach((obj, i) => { if(i > 0){ delete obj.name } })) 我的预期产出 [{id:1,name:'sit'},{id:2},{id:3}] 你的代码对我有用,正如你在这里看到的 我看到的唯一错误是您

我下面的代码有什么问题?如何删除对象名称属性的最后两个数组

let arr = [{id:1,name:'sit'},{id:2,name:'stand'},{id:3,name:'bark'}]

let abc = arr.forEach((obj, i) => {
if(i > 0){
   delete obj.name
}
}))
我的预期产出

[{id:1,name:'sit'},{id:2},{id:3}]

你的代码对我有用,正如你在这里看到的

我看到的唯一错误是您有一个额外的

您所做的是在适当的位置修改数组,而foreach不会返回新数组,因为它会返回
undefined

let arr=[{id:1,名称:'sit'},{id:2,名称:'stand'},{id:3,名称:'bark'}]
arr.forEach((obj,i)=>{
如果(i>0){
删除对象名
}
})

console.log(arr)
您得到了什么输出?代码对我有效…
forEach
不返回任何内容。。。您正在原地修改
arr
。我会说
undefined
,而不是
void
    let arr = [{id:1,name:'sit'},{id:2,name:'stand'},{id:3,name:'bark'}]

        arr.forEach((obj, i) => {
            var index = arr.indexOf(obj);
            if(index > (arr.length - 3)){
                delete obj.name
            }
        })

   console.log(arr)