hola, he creado un programa que elimina una matriz de otra pero. Y funciona bien, creo, pero si pongo 2 del mismo valor simultáneamente, solo elimina un valor debido al segundo argumento de la función de empalme. ¿Cómo puedo verificar después de eliminar un elemento nuevamente si queda algún otro número? Mi código está debajo.
const arr1 = [1, 2, 2, 3, 5, 2, 3, 7]; const arr2 = [2, 3]; let countArr = []; for (let i = 0; i < arr2.length; i++) { for (let j = 0; j <= arr1.length; j++) { if (arr1[j] === arr2[i]) { arr1.splice(j, 1); } } } console.log(arr1); <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <script src="demo.js"></script> </body> </html>aquí es bastante avanzado, puede usar 2 condiciones anidadas para verificarlo nuevamente si la matriz aún tiene ese valor
const arr1 = [1,2,2,3,5,2,3,7]; const arr2 = [2, 3]; for (let i = 0; i < arr2.length;i++){ for (let j = 0; j < arr1.length; j++){ if (arr1[j] === arr2[i]) { arr1.splice(j, 1) if (arr1[j] === arr2[i]) { arr1.splice(j, 1) } } } }o puede usar set para eliminar cualquier valor duplicado para la matriz antes de comenzar a hacer un bucle. aquí puede leer más sobre conjuntos en la documentación de MDN