


5 algorithmes JavaScript pour supprimer les éléments en double d'un tableau
Cet article présente principalement cinq algorithmes couramment utilisés et efficaces pour supprimer les éléments en double de tableaux en JavaScript. Il résume et analyse plusieurs techniques d'opération courantes pour supprimer les éléments en double de tableaux en JavaScript sous forme d'exemples. à cela. J'espère que cela pourra aider tout le monde. Voici 5 méthodes pour implémenter la déduplication de tableau dans js.
1. Méthode de traversée de tableau
La méthode la plus simple pour supprimer les doublons,
Idées d'implémentation : Créez un nouveau tableau, parcourez le tableau entrant et ajoutez la valeur si elle ne se trouve pas dans le nouveau tableau ; Remarque : La méthode "indexOf" pour déterminer si la valeur est dans le tableau est une méthode ECMAScript5, qui n'est pas prise en charge par IE8 et versions antérieures Vous devez écrire davantage pour le code du navigateur de version à faible compatibilité, le code source est le suivant :
// 最简单数组去重法 function unique1(array){ var n = []; //一个新的临时数组 //遍历当前数组 for(var i = 0; i < array.length; i++){ //如果当前数组的第i已经保存进了临时数组,那么跳过, //否则把当前项push到临时数组里面 if (n.indexOf(array[i]) == -1) n.push(array[i]); } return n; } // 判断浏览器是否支持indexOf ,indexOf 为ecmaScript5新方法 IE8以下(包括IE8, IE8只支持部分ecma5)不支持 if (!Array.prototype.indexOf){ // 新增indexOf方法 Array.prototype.indexOf = function(item){ var result = -1, a_item = null; if (this.length == 0){ return result; } for(var i = 0, len = this.length; i < len; i++){ a_item = this[i]; if (a_item === item){ result = i; break; } } return result; } }
2. Objet. appariement clé-valeur
Cette méthode s'exécute plus rapidement que toute autre méthode, mais elle prend plus de mémoire
Idée d'implémentation : Créer une nouvelle ; js et un nouveau tableau, et lors de la traversée du tableau entrant, jugez si la valeur est la clé de l'objet js, sinon, ajoutez la clé à l'objet et placez-la dans un nouveau tableau. Remarque : lors de la détermination s'il s'agit d'une clé d'objet js, "toString()" sera automatiquement exécuté sur la clé entrante. Différentes clés peuvent être confondues avec la même ; par exemple : a[1], a["1"]. Pour résoudre le problème ci-dessus, vous devez toujours appeler "indexOf".
// 速度最快, 占空间最多(空间换时间) function unique2(array){ var n = {}, r = [], len = array.length, val, type; for (var i = 0; i < array.length; i++) { val = array[i]; type = typeof val; if (!n[val]) { n[val] = [type]; r.push(val); } else if (n[val].indexOf(type) < 0) { n[val].push(type); r.push(val); } } return r; }
3. Méthode de jugement d'indice Array
Vous devez toujours appeler le "indexOf " performances Semblable à la méthode 1,
Idée d'implémentation : Si le i-ème élément du tableau actuel apparaît d'abord à une position autre que i dans le tableau actuel, cela signifie que le Le i-ème élément est répété et ignoré. Perdre. Sinon, stockez le tableau de résultats.
function unique3(array){ var n = [array[0]]; //结果数组 //从第二项开始遍历 for(var i = 1; i < array.length; i++) { //如果当前数组的第i项在当前数组中第一次出现的位置不是i, //那么表示第i项是重复的,忽略掉。否则存入结果数组 if (array.indexOf(array[i]) == i) n.push(array[i]); } return n; }
4. Méthode de suppression adjacente après tri
Bien que le "tri" du tableau natif "Les résultats de tri de la méthode ne sont pas très fiables, mais ce défaut n'a aucun impact sur la déduplication qui ne fait pas attention à l'ordre.
Idée d'implémentation : Triez le tableau entrant après le tri, les mêmes valeurs sont adjacentes, puis lors du parcours, ajoutez uniquement les valeurs qui ne sont pas des doublons de la valeur précédente. le nouveau tableau.
// 将相同的值相邻,然后遍历去除重复值 function unique4(array){ array.sort(); var re=[array[0]]; for(var i = 1; i < array.length; i++){ if( array[i] !== re[re.length-1]) { re.push(array[i]); } } return re; }
5. Optimisation de la méthode de traversée de tableau
provient d'articles de blog étrangers, la méthode of Le code d'implémentation est plutôt cool ;
Idée d'implémentation : obtenez la valeur la plus à droite sans duplication et placez-la dans un nouveau tableau. (Lorsque des valeurs en double sont détectées, la boucle en cours est terminée et le prochain tour de jugement de la boucle de niveau supérieur est entré)
// 思路:获取没重复的最右一值放入新数组 function unique5(array){ var r = []; for(var i = 0, l = array.length; i < l; i++) { for(var j = i + 1; j < l; j++) if (array[i] === array[j]) j = ++i; r.push(array[i]); } return r; }
Recommandations associées :
Résumé recommandé de plusieurs méthodes JavaScript pour supprimer les éléments en double
tableau js Un exemple de tutoriel sur la recherche d'éléments en double dans
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de reconnaissance vocale en ligne Introduction : Avec le développement continu de la technologie, la technologie de reconnaissance vocale est devenue une partie importante du domaine de l'intelligence artificielle. Le système de reconnaissance vocale en ligne basé sur WebSocket et JavaScript présente les caractéristiques d'une faible latence, d'un temps réel et d'une multiplateforme, et est devenu une solution largement utilisée. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de reconnaissance vocale en ligne.

La technologie de détection et de reconnaissance des visages est déjà une technologie relativement mature et largement utilisée. Actuellement, le langage d'application Internet le plus utilisé est JS. La mise en œuvre de la détection et de la reconnaissance faciale sur le front-end Web présente des avantages et des inconvénients par rapport à la reconnaissance faciale back-end. Les avantages incluent la réduction de l'interaction réseau et de la reconnaissance en temps réel, ce qui réduit considérablement le temps d'attente des utilisateurs et améliore l'expérience utilisateur. Les inconvénients sont les suivants : il est limité par la taille du modèle et la précision est également limitée ; Comment utiliser js pour implémenter la détection de visage sur le web ? Afin de mettre en œuvre la reconnaissance faciale sur le Web, vous devez être familier avec les langages et technologies de programmation associés, tels que JavaScript, HTML, CSS, WebRTC, etc. Dans le même temps, vous devez également maîtriser les technologies pertinentes de vision par ordinateur et d’intelligence artificielle. Il convient de noter qu'en raison de la conception du côté Web

Outils essentiels pour l'analyse boursière : découvrez les étapes pour dessiner des graphiques en bougies en PHP et JS. Des exemples de code spécifiques sont nécessaires. Avec le développement rapide d'Internet et de la technologie, le trading d'actions est devenu l'un des moyens importants pour de nombreux investisseurs. L'analyse boursière est une partie importante de la prise de décision des investisseurs, et les graphiques en bougies sont largement utilisés dans l'analyse technique. Apprendre à dessiner des graphiques en bougies à l'aide de PHP et JS fournira aux investisseurs des informations plus intuitives pour les aider à prendre de meilleures décisions. Un graphique en chandeliers est un graphique technique qui affiche les cours des actions sous forme de chandeliers. Il montre le cours de l'action

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

Introduction à l'utilisation de JavaScript et de WebSocket pour mettre en œuvre un système de commande en ligne en temps réel : avec la popularité d'Internet et les progrès de la technologie, de plus en plus de restaurants ont commencé à proposer des services de commande en ligne. Afin de mettre en œuvre un système de commande en ligne en temps réel, nous pouvons utiliser les technologies JavaScript et WebSocket. WebSocket est un protocole de communication full-duplex basé sur le protocole TCP, qui peut réaliser une communication bidirectionnelle en temps réel entre le client et le serveur. Dans le système de commande en ligne en temps réel, lorsque l'utilisateur sélectionne des plats et passe une commande

De nombreux amis qui utilisent le navigateur Edge sur Win10 ont rencontré le problème de l'ouverture répétée des pages Web, ce qui est un casse-tête. Alors, comment le résoudre ? Jetons un coup d'œil aux solutions détaillées ci-dessous. Que faire si le navigateur Edge continue d'ouvrir des pages Web à plusieurs reprises : 1. Accédez au navigateur Edge et cliquez sur les trois points dans le coin supérieur droit. 2. Cliquez sur "Paramètres" dans la barre des tâches. 3. Recherchez « Méthode d'ouverture Microsoft Edge ». 4. Cliquez sur le menu déroulant et sélectionnez « Page de démarrage ». 5. Redémarrez le navigateur une fois terminé pour résoudre le problème.

Avec le développement rapide de la finance sur Internet, l'investissement en actions est devenu le choix de plus en plus de personnes. Dans le trading d'actions, les graphiques en bougies sont une méthode d'analyse technique couramment utilisée. Ils peuvent montrer l'évolution des cours des actions et aider les investisseurs à prendre des décisions plus précises. Cet article présentera les compétences de développement de PHP et JS, amènera les lecteurs à comprendre comment dessiner des graphiques en bougies boursières et fournira des exemples de code spécifiques. 1. Comprendre les graphiques en bougies boursières Avant de présenter comment dessiner des graphiques en bougies boursières, nous devons d'abord comprendre ce qu'est un graphique en bougies. Les graphiques en chandeliers ont été développés par les Japonais

JavaScript et WebSocket : Construire un système efficace de prévisions météorologiques en temps réel Introduction : Aujourd'hui, la précision des prévisions météorologiques revêt une grande importance pour la vie quotidienne et la prise de décision. À mesure que la technologie évolue, nous pouvons fournir des prévisions météorologiques plus précises et plus fiables en obtenant des données météorologiques en temps réel. Dans cet article, nous apprendrons comment utiliser la technologie JavaScript et WebSocket pour créer un système efficace de prévisions météorologiques en temps réel. Cet article démontrera le processus de mise en œuvre à travers des exemples de code spécifiques. Nous
