我正在循环一个数组,由于某种原因,循环+条件+拼接正在删除不应该删除的索引并保留其他应该删除的索引,有人能指出我的语法有什么错误吗?
arr2 = ['agg', 45, 'ghj', ' ', 9999, 12, 'aa', 'bb'];
function returnAlphanumeric(array){
for (var i=0; i<array.length; i++){
if (typeof array[i] !== "number"){
array.splice(i, 1);
}
}
console.log('Your new array is: '+array);
}
returnAlphanumeric(arr2);
最佳答案
为什么不使用过滤方法:
arr2 = ['agg', 45, 'ghj', ' ', 9999, 12, 'aa', 'bb'];
arr2.filter(a => typeof a === "number"); // 45, 9999, 12
关于带有for循环+条件的Javascript数组删除不必要的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39140706/