考虑以下:
resultData.forEach(function(data) {
if (data.profile === undefined) {
resultData.splice(data, 1);
}
});
在某些情况下,resultData对象之一没有配置文件。因此,我尝试将其删除。但是实际上并没有被删除,被删除的元素有一个配置文件...
关于我在做什么错的任何想法吗?
当我
console.log(resultData)
看到对象时,特别是那些没有配置文件的对象。splice
是否要在适当的位置修改数组?它返回删除的元素数组。那我在做什么错?我想从配置文件未定义的对象数组中删除任何对象,我以为是这样做的...
最佳答案
使用Array.prototype.filter直接过滤出结果。这样,由于缺少索引,您将不会有任何不一致的地方,并且阵列中的插槽也不会被undefined
填充。
resultData = resultData.filter(function(data) {
return data.profile !== undefined;
});