我需要一个帮助。我需要使用 JavaScript 根据某些条件从数组中删除行。我在下面解释我的代码:
var arr = [{
'value': '',
'name': 'Rajeev'
}, {
'value': '1',
'name': 'Raj'
}, {
'value': '',
'name': 'Ram'
}];
for(var i=0;i<arr.length;i++){
if(arr[i]['value']==''){
arr.splice(i,1);
}
}
在删除任何值后,数组索引会发生变化,因此无法在每种情况下都正确删除。我需要删除 value ==''
的行。请帮助我。
最佳答案
您可以从末尾开始迭代,因为 Array#splice
减少数组的长度。
在您的代码中,如果进行拼接,则必须将索引保持在相同索引,而不增加。
for (var i = arr.length - 1; i >= 0; i--){
if (arr[i]['value'] == '') {
arr.splice(i, 1);
}
}
关于javascript - 无法使用 Javascript/Jquery 从数组中删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41805732/