Ho cercato qui un metodo di qualità per confrontare gli array associativi in javascript. L'unica soluzione decente che ho trovato è il progetto PHP.JS che ha alcune funzioni di array comparativo. L'unico problema è che queste funzioni considerano il primo array come la chiave del secondo. Nella mia situazione almeno entrambi gli array non hanno sempre lo stesso numero di chiavi e le stesse chiavi. Ciò fa sì che le funzioni restituiscano risultati che non includono chiavi che potrebbero non essere esistite in array1 ma che esistevano in array2. L'unica cosa che posso pensare finora è di eseguire la funzione array_diff_associative() due volte con gli argomenti capovolti e combinarli (il che sembra problematico dal momento che il primo argomento è usato come chiave per il secondo).Confronta due array Javascript - Associative
Qualche suggerimento? Grazie.
semplicemente chiedendo, non dovrebbe il tuo primo paragone in ParallelametriAssociative essere (a === b)? –
err sì probabilmente :-) –
La tua soluzione ha due svantaggi: (1) restituirebbe correttamente in modo errato nel caso in cui aeb hanno le stesse dimensioni, e ha una chiave che punta a un valore indefinito, mentre b non lo fa Ho quella chiave. (2) restituirebbe erroneamente false nel caso in cui esistano due valori all'interno di aeb, che hanno gli stessi valori, ma sono in realtà oggetti e non sono uguali da un operatore '=='. Mentre è facile da risolvere (1), richiederebbe più sforzo per risolvere (2). Come soluzione alternativa, userei solo un metodo ** toString() **, o anche più veloce, ** join ('') ** per confrontare due stringhe. – CuongHuyTo