Dados dos objetos de array/array de JavaScript y la tarea es comparar la igualdad de ambos objetos de array.
Enfoque 1:
- Use el método jQuery not() para verificar cada elemento de la array1, si no está presente en la array2 o para cada elemento de la array2, si no está presente en la array1, entonces devuelve falso en ambos casos.
- También verifique la longitud de ambas arrays.
Ejemplo: este ejemplo utiliza el método jQuery not() para comparar la igualdad de ambas arrays.
html
<!DOCTYPE HTML> <html> <head> <title> How to compare two JavaScript array objects using jQuery ? </title> <script src= "https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"> </script> </head> <body style = "text-align:center;"> <h1 style = "color:green;" > GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 15px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "font-size: 24px; font-weight: bold; color: green;"> </p> <script> var up = document.getElementById('GFG_UP'); var down = document.getElementById('GFG_DOWN'); var arr1 = [1, 3, 5, 8]; var arr2 = [1, 3, 5, 7]; up.innerHTML = "Click on the button to check " + "equality of arrays.<br>Array1 - " + arr1 + "<br>Array2 - " + arr2; function GFG_Fun() { down.innerHTML = $(arr1).not(arr2).length === 0 && $(arr2).not(arr1).length === 0; } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Enfoque 2:
- Primero, use la función sort() para ordenar ambas arrays en orden ascendente.
- Luego comience a hacer coincidir el elemento uno por uno y si se encuentra alguna discrepancia, devuelve falso; de lo contrario, devuelve verdadero.
Ejemplo: Este ejemplo utiliza un enfoque como se discutió anteriormente.
html
<!DOCTYPE HTML> <html> <head> <title> How to compare two JavaScript array objects using jQuery ? </title> <script src= "https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"> </script> </head> <body style = "text-align:center;"> <h1 style = "color:green;" > GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 15px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "font-size: 24px; font-weight: bold; color: green;"> </p> <script> var up = document.getElementById('GFG_UP'); var down = document.getElementById('GFG_DOWN'); var arr1 = [1, 3, 7, 5]; var arr2 = [1, 3, 5, 7]; up.innerHTML = "Click on the button to check " + "equality of arrays.<br>Array1 - " + arr1 + "<br>Array2 - " + arr2; function compare(ar1, ar2) { ar1.sort(); ar2.sort(); if(ar1.length != ar2.length) return false; for(var i = 0; i < ar1.length; i++) { if (ar1[i] != ar2[i]) return false; } return true; } function GFG_Fun() { down.innerHTML = compare(arr1, arr2); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Enfoque 3:
- Cree dos objetos de array y guárdelos en las variables arr1 y arr2.
- Use la función JSON.stringify() para convertir el objeto en una string JSON.
- Ahora compare ambas strings JSON usando el operador de comparación (==) para verificar que ambos objetos de la array sean iguales o no.
Nota: este método solo funciona cuando ambos objetos de la array se ordenan de la misma manera.
Ejemplo:
html
<!DOCTYPE HTML> <html> <head> <title> How to compare two JavaScript array objects using jQuery ? </title> <script src= "https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"> </script> </head> <body style = "text-align:center;"> <h1 style = "color:green;" > GeeksForGeeks </h1> <h2> Click on the button to check equality of arrays </h2> <p id = "GFG_UP" style = "font-size: 15px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "font-size: 24px; font-weight: bold; color: green;"> </p> <script> var up = document.getElementById('GFG_UP'); var down = document.getElementById('GFG_DOWN'); var arr1 = [ {id: "1", name: "GeeksforGeeks"}, {id: "2", name: "GFG"} ]; var arr2 = [ {id: "1", name: "GeeksforGeeks"}, {id: "2", name: "GFG"} ]; up.innerHTML = "<h3>Array1:</h3> " + JSON.stringify(arr1) + "<h3>Array2:</h3> " + JSON.stringify(arr2); function compare(ar1, ar2) { if(JSON.stringify(arr1) == JSON.stringify(arr2)){ return true; } else return false; } function GFG_Fun() { down.innerHTML = compare(arr1, arr2); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Publicación traducida automáticamente
Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA