Maison > interface Web > js tutoriel > Tableaux ou objets en JavaScript : lequel est le plus rapide pour récupérer un seul objet avec un identifiant numérique long ?

Tableaux ou objets en JavaScript : lequel est le plus rapide pour récupérer un seul objet avec un identifiant numérique long ?

Mary-Kate Olsen
Libérer: 2024-10-27 11:43:30
original
1080 Les gens l'ont consulté

  Arrays vs. Objects in JavaScript: Which is Faster for Retrieving a Single Object with a Long Numerical ID?

Efficacité des tableaux et des objets en JavaScript : récupération d'un seul objet avec un identifiant numérique long

Énoncé du problème :

Lorsque vous stockez efficacement un grand nombre d'objets et que vous devez les récupérer à l'aide d'un identifiant numérique long et unique, il est crucial de déterminer la meilleure structure de données : un tableau ou un objet.

Option de tableau :

<code class="javascript">var a = [{id: 29938, name: 'name1'},
         {id: 32994, name: 'name1'}];</code>
Copier après la connexion

Pour localiser un objet dans un tableau, une recherche linéaire est requise :

<code class="javascript">function getObject(id) {
    for (var i=0; i < a.length; i++) {
        if (a[i].id == id)
            return a[i];
    }
}</code>
Copier après la connexion

Option objet :

<code class="javascript">var a = {};
a[29938] = {id: 29938, name: 'name1'};
a[32994] = {id: 32994, name: 'name1'};</code>
Copier après la connexion

Avec un objet, la récupération est directe en fonction de l'ID utilisé comme clé :

<code class="javascript">function getObject(id) {
    return a[id];
}</code>
Copier après la connexion

Analyse :

En général, les tableaux sont légèrement plus rapides que les objets pour récupérer des éléments individuels, en particulier avec de grands tableaux. En effet, les objets ont des paires clé-valeur, qui nécessitent une surcharge de recherche supplémentaire par rapport à la simple indexation des tableaux.

Résultats des tests de performances (2017) :

Une performance un test mené en 2017 a révélé qu'un tableau est nettement plus rapide qu'un tableau troué et qu'un objet pour récupérer un seul objet.

Tri :

Les performances de tri dépendent de l'algorithme de tri utilisé et le nombre d'éléments. Bien que les tableaux puissent être triés plus efficacement que les objets à l'aide de méthodes intégrées telles que Array.sort(), la différence peut ne pas être significative pour les ensembles de données plus petits.

Conclusion :

Si l'opération principale consiste à récupérer un seul objet en fonction de son ID, un tableau est généralement plus efficace qu'un objet, en particulier pour un grand nombre d'objets. Cependant, si le tri est une exigence fréquente, le choix de la structure des données peut nécessiter des tests et des considérations supplémentaires.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal