La deduplicación de la matriz es un requisito común, y consideramos temporalmente matrices del mismo tipo a la deduplicación. Lo principal es aclarar las ideas y considerar el rendimiento. Los siguientes métodos están básicamente disponibles en línea, y los resumiré brevemente aquí.
Ideas:
1. Iterer a través de la matriz, comparar uno por uno y eliminar el siguiente después de la comparación con la misma.
2. Itere sobre la matriz, compare uno por uno, compare con el mismo, omita los anteriores repetidos y póngalos en la nueva matriz si son diferentes.
3. Tome cualquier elemento de matriz en una nueva matriz, atraviese cualquier elemento de matriz restante, compare con los elementos de la nueva matriz una por una. Si hay una diferencia, póngalo en la nueva matriz.
4. Iterer sobre la matriz, tomar un elemento, como atribuye el objeto, y determine si existe el atributo
1. Elimine los duplicados después:
función ov1 (arr) {// var a1 = ((nueva fecha) .getTime ()) para (var i = 0; i <arr.length; i ++) para (var j = i+1; j <arr.length; j ++) if (arr [i] === arr [j]) {arr.splice (j, 1); j--;} //console.info(((on mar Fecha) .GetTime ()-a1) return arr.sort (función (a, b) {return AB});}2. Este es un método convencional, que es más fácil de entender. Si es lo mismo, el bucle se explotará.
función ov2 (a) {// var a1 = ((nueva fecha) .GetTime ()) var b = [], n = a.length, i, j; para (i = 0; i <n; i ++) {for (j = i+1; j <n; j ++) if (a [i] === a [j]) {j = false; break;} if (j) b.push (a [i]); } //console.info((new fecha) .GetTime ()-a1) return B.sort (function (a, b) {return AB});}3. Me llevó mucho tiempo entender esto. Aunque el bucle J continúa aquí, el valor I ha cambiado. Es equivalente a un nuevo bucle I:
función ov3 (a) {// var a1 = ((nueva fecha) .GetTime ()) var b = [], n = a.length, i, j; para (i = 0; i <n; i ++) {for (j = i+1; j <n; j ++) if (a [i] === a [j]) j = ++ i b.push (a [i]);} //console.info((new fecha) .getTime ()-a1) return b.sort (function (a, b) {return ab});});});});});});4. Asegúrese de que todas las nuevas matrices sean únicas
función ov4 (ar) {// var a1 = ((nueva fecha) .getTime ()) var m = [], f; for (var i = 0; i <ar.length; i ++) {f = true; para (var j = 0; j <m.length; j ++) if (ar [i] === m [j]) {f = false; break;}; if (f) m.push (ar [i])} // console.info ((nueva fecha) .getTime ()-a1) return m.sort (function (a, b) {return ab});}5. Use propiedades de objeto
función ov5 (ar) {// var a1 = (nueva fecha) .GetTime () var m, n = [], o = {}; for (var i = 0; (m = ar [i])! == undefined; i ++) if (! O [m]) {n.push (m); o [m] = true;} // console.info ((new date) .gettime (). n.sort (función (a, b) {return AB}) ;;}Las recomendaciones anteriores para eliminar los valores duplicados en las matrices de JavaScript son todo el contenido que comparto con usted. Espero que pueda darle una referencia y espero que pueda apoyar más a Wulin.com.