La mise en œuvre de la pile d'objets en JavaScript
Stack agit comme un stockage temporaire des données à l'aide du LIFO (Last In First Out) principe. Stack permet d'effectuer deux opérations de base PUSH et POP. Poussez opération ajoute une des données sur le haut de la pile et toutes les données restantes en dessous. opération Pop enlève et retourne les données actuelles sur le nœud supérieur de la pile. Ci-dessous l'extrait de code en JavaScript pour effectuer l'opération en utilisant la pile d'objets.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | "text/javascript" > type de script <= "text / javascript"> //Creating Stack Object fonction Stack () / / Création de la pile d'objets ( / / Création d'un tableau vide de cartes. = new Array ( ) ; //cards array inside stack object ce. cartes = new Array (); / / tableau des cartes à l'intérieur de la pile d'objet = pushdata ; //Call pushdata function on push operation ce. pousser = pushdata; / / Appelle la fonction pushdata sur le fonctionnement du push = popdata ; //Call popdata function on pop operation ce. pop = popdata; / / Appelle la fonction popdata sur la pop opération = showStackData ; //Call showStackData function on printstack operation ce. printStack = showStackData; / / Appelle la fonction showStackData sur le fonctionnement printstack ) data ) pushdata fonction (données) ( . push ( data ) ; ce. cartes. push (données); ) data ) popdata fonction (données) ( . pop ( ) ; ce retour. cartes. pop (); ) showStackData function () ( ; ce retour. cartes; ) new Stack ( ) ; //Create stack Object var une nouvelle pile = (); / / Créer la pile d'objets 12 ) ; //Push Data onto Stack poussoir A. (12); / / Push de données sur la pile 32 ) ; poussoir A. (32); 42 ) ; poussoir A. (42); a. pop ( ) ; var z = a. pop (); "Data Popped: " + z ) ; document. write ("Data éclaté:" + z); "Stack Output: " + a. printStack ( ) ) ; document. write ("Sortie de la pile:" + a. printStack ()); / Script> < |
Sortie:
Données éclaté: 42
Sortie de la pile: 12,32
Explication:
- Ici, je crée de la pile d'objets en utilisant JavaScript modèle basé objet de création . L'intérieur de la pile des objets a un objet Array appelé les cartes qui contiennent les données stockées à l'intérieur de la pile.
- La pile d'objets est également titulaire l'appel de fonction pour obtenir des méthodes appelées
- Se référant à la ligne 26, je crée un nouvel objet de la pile
- Se référant à la ligne 27, 28, 29, 30 Je suis d'appeler les méthodes définies pour l'objet de la pile
- méthodes Pop retourne l'élément sauté de tableau afin de renvoi à 30 variable z contient les données maïs

Recherche personnalisée
Articles populaires:
- Timers fonction en JavaScript
- Manipulation d'objets en Javascript
- Calcul de la position DIV en JavaScript
- Techniques d'optimisation Javascript
- Tableaux bidimensionnels en JavaScript
- Les objets en Javascript
- Création d'objets en Javascript
- Analyser les documents XML en JavaScript
- Fonction prototype en JavaScript
- Des tableaux associatifs en JavaScript



































Je pense qu'il ya une faute de frappe sur la ligne 16. Je ne vois pas pourquoi la méthode popData prend un paramètre de "données"?
On dirait qu'il vient effectuer:
popdata function ()
(
retour this.cards.pop ();
)
Je me demandais isnt l'objet Array en soi une pile de structure de données? Votre mise en œuvre semble créer un wrapper autour de l'objet Array sans ajouter de fonctionnalités