Maison  >  Article  >  interface Web  >  Quelle est la différence entre pile et tas en JavaScript

Quelle est la différence entre pile et tas en JavaScript

WBOY
WBOYoriginal
2022-03-01 16:52:524483parcourir

Différence : 1. Dans les opérations de mémoire, la pile est automatiquement allouée et libérée par le système d'exploitation, tandis que le tas est alloué et libéré indépendamment par le développeur ; 2. Dans la structure des données, la pile est une table linéaire avec des opérations limitées ; , qui permet uniquement que les opérations d'insertion et de suppression soient effectuées à une extrémité de la table, et le tas est une file d'attente prioritaire, qui exécutera en premier la priorité la plus élevée en fonction de la priorité.

Quelle est la différence entre pile et tas en JavaScript

L'environnement d'exploitation de ce tutoriel : système Windows 10, JavaScript version 1.8.5, ordinateur Dell G3.

Quelle est la différence entre pile et tas en JavaScript ?

Pour comprendre les deux concepts de tas et de pile, vous devez les comprendre dans un scénario spécifique. De manière générale, cela a deux significations :

(1) Dans le scénario d'opération de mémoire, le tas et la pile représentent deux méthodes de gestion de la mémoire.

(2) Dans le scénario de structure de données, le tas et la pile représentent deux structures de données couramment utilisées.

1. Scénario d'opération de mémoire

La pile est automatiquement allouée et libérée par le système d'exploitation. Elle est utilisée pour stocker des segments de données simples, occupant une taille d'espace fixe, tels que des types de données de base (Nombre, Chaîne, Booléen). ...) et fonctions.

Le tas est alloué et libéré par le développeur indépendamment. S'il n'est pas libéré activement, il sera recyclé par le navigateur à la fin du programme et est utilisé pour stocker les types référence (les variables des types référence ne sauvegardent en fait pas la variable). lui-même, mais un pointeur vers l'espace mémoire).

Types de données en JavaScript

2. Scénarios de structure de données

JavaScript a les concepts de pile et de file d'attente, et la pile est imitée via des tableaux.

Pile : La pile est une table linéaire avec des opérations limitées. La restriction signifie que seules les opérations d'insertion et de suppression sont autorisées à une extrémité de la table. Cette extrémité est appelée le haut de la pile (Relativement parlant, l'autre). la fin est appelée Est le bas de la pile (Bottom). Placer un nouvel élément au-dessus de l'élément supérieur de la pile pour en faire un nouvel élément supérieur s'appelle pousser, pousser ou supprimer l'élément supérieur de la pile, ce qui fait que ses éléments adjacents deviennent le nouveau sommet de la pile. appelé pop ou pop (Pop). La pile est implémentée via les méthodes push() et pop() du tableau.

Heap : Le tas est en fait une file d'attente prioritaire, ce qui signifie qu'il y a une priorité dans la file d'attente. Par exemple, s'il y a de nombreuses tâches à exécuter dans la file d'attente, celle avec la priorité la plus élevée sera exécutée en premier selon. la priorité.

Recommandations associées : Tutoriel d'apprentissage Javascript

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!

Déclaration:
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