js去掉空数组
大众写法
/**
* 过滤掉空数组
* @param arr
* @returns {*}
*/
function removeEmptyArray(arr){
for(var i = 0; i < arr.length; i++) {
if(arr[i] == undefined) {
arr.splice(i,1);
i = i - 1; // i - 1 ,因为空元素在数组下标 2 位置,删除空之后,后面的元素要向前补位,
// 这样才能真正去掉空元素,觉得这句可以删掉的连续为空试试,然后思考其中逻辑
}
}
return arr;
arr=[0,1,,,2];
console.log(removeEmptyArray(arr))//[0,1,2] 这个返回0,1,2
};
新写法
这个把0也会给过滤掉,不太合适
arr.filter(e=>e);
arr=[0,1,,,2];
console.log()//[1,2] 这个返回1,2,这个把0也会给过滤掉,不太合适