Stack diegimas JavaScript

Stack Diegimas Javascript



Stackai yra linijinės duomenų struktūros, kurios vadovaujasi LIFO principu. LIFO reiškia paskutinis pirmas, o tai reiškia, kad paskutinis pridėtas elementas yra pirmasis, kuris pašalinamas. Ši duomenų struktūra vadinama krūva kaip analogija realaus pasaulio kamščiams, pvz., sausainių krūvai sausainių indelyje arba knygų krūvai knygų lentynoje. Į rietuves įdėti ir ištraukti galima tik viename gale, t. y. krūvos viršuje. Pavyzdžiui, jei norime suvalgyti sausainį, pirmiausia gausime viršutinį, o paskui antrąjį ir pan.

Šiame įraše bus kalbama apie „JavaScript“ dėklo diegimą. Dirbdami su „JavaScript“, nesijaudinsime dėl krūvos dydžio, nes „JavaScript“ objektų dydis gali dinamiškai augti.







Stack diegimas JavaScript

Norėdami įdiegti dėklo duomenų struktūrą, naudosime JavaScript klasę. The krūva klasė savo konstruktoriuje turės masyvą, kuris bus naudojamas elementams saugoti krūvoje. Klasė taip pat apibrėžs skirtingus metodus, kurie bus naudojami manipuliuoti kamino viduje saugomais duomenimis. Pagrindiniai masyvo metodai yra Įdėti() ir ekstraktas () metodai, naudojami elementams pridėti ir pašalinti iš krūvos viršaus.



The krūva klasė taip pat apibrėžia kitus metodus, pvz žvilgtelėti () , Yra tuščias() , aišku () , spausdinti () ir dydis () taip pat:



klasės krūva {
konstruktorius ( ) {

tai.elementai = [ ] ;

}

// Padeda elementą ant krūvos viršaus

Įdėti ( elementas ) {

tai.elementai.stumti ( elementas ) ;

}

// Pašalina elementą iš krūvos viršaus

ekstraktas ( ) {

tai.elementai.pop ( ) ;

}

// Grąžina aukščiausią krūvos elementą

žvilgtelėti ( ) {

grąžinti tai.elementai [ this.elements.length – 1 ] ;

}
// Patikros jeigu krūva tuščia

Yra tuščias ( ) {

grąžinti tai.elementai.ilgis == 0 ;

}

// Spausdina visą krūvą

spausdinti ( ) {
dėl ( leisti aš = 0 ; i < tai.elementai.ilgis; i++ ) {
console.log ( tai.elementai [ i ] ) ;
}

}
// Grąžina dydis iš kamino

dydis ( ) {

grąžinti tai.elementai.ilgis;

}

// išvalo krūvą

aišku ( ) {
tai.elementai = [ ] ;
}

}





Elementų stūmimas ir iššokimas iš kamino

Paprasčiausias krūvos veiksmas yra elementų įdėjimas ir ištraukimas iš krūvos viršaus. Stack klasė suteikia du metodus šioms operacijoms:


Pirmoje minėto kodo eilutėje deklaruojamas naujas krūvas pavadinimu s . Tada Įdėti() metodas naudojamas keturiems elementams įterpti į krūvą, iš kurių du pašalinami ekstraktas () metodas.



Kaip paimti viršutinį elementą iš kamino

The krūva klasė apibrėžia žvilgtelėti () būdas gauti viršutinį elementą iš kamino:


Kaip patikrinti, ar krūva tuščia?

Klasė taip pat apibrėžia metodą, kurį galima naudoti norint patikrinti, ar krūva tuščia:


Kaip atspausdinti visą krūvą?

The spausdinti () metodas gali būti iškviestas norint spausdinti visą krūvą


Kaip patikrinti kamino dydį?

The dydis () metodas naudoja .ilgis savybė, norint gauti krūvos dydį:


Kaip išvalyti visą krūvą?

Tiesiog iškvieskite aišku () būdas pašalinti kiekvieną kamino elementą:

Išvada

Stacks yra naudingos duomenų struktūros su daugeliu realaus pasaulio programų, tokių kaip naršyklės istorija, anuliavimo mygtukas teksto rengyklėse ir skambučių žurnalai. Visos šios programos veikia pagal LIFO principą, pvz., mygtukas „Atgal“ naršyklėje grąžina paskutinį aplankytą puslapį, o pirmasis skambučių žurnalo įrašas visada yra paskutinis skambutis.

„JavaScript“ dėklo įdiegimas yra labai paprastas, nes jame yra integruota stumti ir pop masyvų metodai. Šiame straipsnyje parodytas „JavaScript“ dėklo diegimo procesas.