Tengo estas filas y quiero eliminar todas las filas que tienen celdas que contienen "indefinido"
"rows":[ [0,"Peter", "undefined value"], [3,"John", 90909090], [5,"Mary","undefined"] ]Entonces, necesito eliminar las filas 1 y 3
solo usa filtro
let rows = [ [0, 'Peter', undefined], [3, 'John', 90909090], [5, 'Mary', undefined], ]; rows = rows.filter((row) => { return row.indexOf(undefined) === -1; }); console.log(rows); // [ [ 3, 'John', 90909090 ] ]si quiere decir que elimine la matriz si tiene una celda de cadena que contiene 'indefinido' como cadena , puede ir con esto
let rows = [ [0, 'Peter', 'undefined value'], [3, 'John', 90909090], [5, 'Mary', 'undefined'], ]; rows = rows.filter((row) => { let isContainUndefined = false; row.forEach((element) => { if (String(element).includes('undefined')) { isContainUndefined = true; return; } }); return !isContainUndefined; }); console.log(rows); // [ [ 3, 'John', 90909090 ] ]Con filter , luego algunos en cada elemento que es verdadero si ninguno de los elementos en cada matriz incluye undefined (cadena).
let rows = [ [0, "Peter", "undefined value"], [3, "John", 90909090], [5, "Mary", "undefined"] ]; rows = rows.filter(row => !row.some(v => typeof v === 'string' && v.includes('undefined'))); console.log(rows); // [ [ 3, 'John', 90909090 ] ]