Cette fois je vais vous apporter un résumé des méthodes de déduplication des tableaux en js Quelles sont les précautions pour dédoublonner les tableaux en js Voici un cas pratique, jetons un oeil.
Nous disposons de n façons de réaliser la déduplication des baies.
Méthode d'implémentation es5
for循环+indexOf function unique(arr) { var uniqueArr = [], len = arr.length for (var i = 0; i < len; i++) { if (uniqueArr.indexOf(arr[i]) == -1) { uniqueArr.push(arr[i]) } } return uniqueArr } var arr = [1, 2, 3, 1, 5, "1"] var uniqueArr = unique(arr) console.log(arr) //[1, 2, 3, 1, 5, "1"] console.log(uniqueArr) //[ 1, 2, 3, 5, '1' ]
Déduplication après tri
function unique(arr) { var uniqueArr = [], sortArr = arr.concat().sort(), len = sortArr.length, prev for (var i = 0; i < len; i++) { if (!i || prev !== sortArr[i]) { uniqueArr.push(sortArr[i]) } prev = sortArr[i] } return uniqueArr } var arr = [1, 2, 3, 1, 5, "1"] var uniqueArr = unique(arr) console.log(arr) //[ 1, 2, 3, 1, 5, '1' ] console.log(uniqueArr) //[ 1, '1', 2, 3, 5 ] 利用对象 function unique(arr) { var uniqueArr = [], obj = {}, len = arr.length for (var i = 0; i < len; i++) { obj[typeof arr[i] + arr[i]] = arr[i] } for (var i in obj) { uniqueArr.push(obj[i]) } console.log(obj) //{ number1: 1, number2: 2, number3: 3, number5: 5, string1: '1' } return uniqueArr } var arr = [1, 2, 3, 1, 5, "1"] var uniqueArr = unique(arr) console.log(arr) // [1, 2, 3, 1, 5, "1"] console.log(uniqueArr) //[ 1, 2, 3, 5, '1' ]
Méthode d'implémentation es6
利用Set结构和Array.from function unique(arr) { return Array.from(new Set(arr)) } var arr = [1, 2, 3, 1, 5, "1"] var uniqueArr = unique(arr) console.log(arr) //[ 1, 2, 3, 1, 5, '1' ] console.log(uniqueArr) //[ 1, 2, 3, 5, '1' ] 利用Set结构和... function unique(arr) { return [...new Set(arr)] } var arr = [1, 2, 3, 1, 5, "1"] var uniqueArr = unique(arr) console.log(arr) //[ 1, 2, 3, 1, 5, '1' ] console.log(uniqueArr) //[ 1, 2, 3, 5, '1' ]
Méthodes de tableau communes
slice() est utilisée pour extraire une partie du tableau cible et renvoyer un nouveau tableau, laissant le tableau d'origine inchangé.
concat() est utilisé pour fusionner plusieurs tableaux. Il ajoute les membres du nouveau tableau à la fin des membres du tableau d'origine, puis renvoie un nouveau tableau, laissant le tableau d'origine inchangé.
reverse() est utilisé pour inverser les éléments du tableau et renvoyer le tableau modifié. Notez que cette méthode modifiera le tableau d'origine.
sort() trie les membres du tableau, la valeur par défaut est l'ordre du dictionnaire. Après le tri, le tableau d'origine sera modifié.
push() est utilisé pour ajouter un ou plusieurs éléments à la fin du tableau et renvoie la longueur du tableau après avoir ajouté les nouveaux éléments. Notez que cette méthode modifiera le tableau d'origine.
pop() est utilisé pour supprimer le dernier élément du tableau et renvoyer cet élément. Notez que cette méthode modifiera le tableau d'origine.
unshift() est utilisé pour ajouter un élément à la première position du tableau et renvoie la longueur du tableau après avoir ajouté le nouvel élément. Notez que cette méthode modifiera le tableau d'origine.
shift() est utilisé pour supprimer le premier élément du tableau et renvoyer cet élément. Notez que cette méthode modifiera le tableau d'origine.
splice() est utilisé pour supprimer certains membres du tableau d'origine et ajouter de nouveaux membres du tableau à la position supprimée. Notez que cette méthode modifiera le tableau d'origine.
map() transmet tour à tour tous les membres du tableau dans la fonction paramètre, puis renvoie les résultats de chaque exécution dans un nouveau tableau.
forEach() est très similaire à la méthode map et exécute également la fonction paramètre sur tous les membres du tableau en séquence. Cependant, la méthode forEach ne renvoie pas de valeur et n'est utilisée que pour manipuler des données.
filter() est utilisé pour filtrer les membres du tableau, et les membres qui remplissent les conditions forment un nouveau tableau et le renvoient.
join() utilise le paramètre spécifié comme séparateur pour concaténer tous les membres du tableau en une chaîne et la renvoyer. Si aucun paramètre n'est fourni, ils sont par défaut des virgules.
indexOf() renvoie la position de la première occurrence de l'élément donné dans le tableau, ou -1 s'il n'apparaît pas.
lastIndexOf() renvoie la position de la dernière occurrence de l'élément donné dans le tableau, ou -1 s'il n'apparaît pas.
Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !
Lecture recommandée :
Utiliser vue2.0+boostrap dans le cas
Résoudre le conflit entre le double-clic et cliquez sur les événements
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!