Дедупликация массива является распространенным требованием, и мы временно рассматриваем массивы одного и того же типа для дедупликации. Главное, чтобы уточнить идеи и рассмотреть представление. Следующие методы в основном доступны в Интернете, и я просто кратко подведу их здесь.
Идеи:
1. Переверните через массив, сравните один за другим и удалите следующий после сравнения с тем же.
2. Итерация над массивом, сравните один за другим, сравните с тем же, пропустите предыдущие повторяющиеся и поместите их в новый массив, если они отличаются.
3. Возьмите любой элемент массива в новый массив, пройдите любой оставшийся элемент массива, сравните его с элементами нового массива один за другим. Если есть разница, поместите его в новый массив.
4. Итерация над массивом, возьмите элемент, в качестве атрибута объекта и определите, существует ли атрибут
1. Удалите дубликаты после этого:
Функция ov1 (arr) {// var a1 = ((новая дата) .gettime ()) для (var i = 0; i <arr.length; i ++) для (var j = i+1; j <arr.length; j ++) if [i] === arr [j]) {arr.splice (j, 1); Date) .getTime ()-a1) return arr.sort (function (a, b) {return ab});}2. Это обычный метод, который легче понять. Если то же самое, петля вырвается.
Функция ov2 (a) {// var a1 = ((новая дата) .getTime ()) var b = [], n = a.length, i, j; for (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 date) .gettime ()-a1) return b.sort (function (a, b) {return ab});}3. Мне потребовалось много времени, чтобы понять это. Хотя J -петля продолжается здесь, значение I изменилось. Это эквивалентно новой петле I:
Функция ov3 (a) {// var a1 = ((новая дата) .getTime ()) var b = [], n = a.length, i, j; for (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 date) .gettime ()-a1) return b.sors (a, b) {ab at ab);4. Убедитесь, что все новые массивы уникальны
функция ov4 (ar) {// var a1 = ((новая дата) .getTime ()) var m = [], f; for (var i = 0; i <ar.length; i ++) {f = true; for (var j = 0; j <m.length; j ++) if (ar [i] === m [j]) {f = false; break;}; if (f) m.push (ar [i])} // console.info ((новая дата) .gettime ()-a1) return m.sort (function (a, b) {return ab});}5. Используйте свойства объекта
Функция ov5 (ar) {// var a1 = (новая дата) .getTime () var m, n = [], o = {}; for (var i = 0; (m = ar [i])! == undefined; i ++) if (! o [m]) {n.push (m); o [m] = true;} // Консоль. N.sort (function (a, b) {return ab}) ;;}Приведенные выше рекомендации по удалению дублирующих значений в массивах JavaScript - это все контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.