slim-stack
Version:
stack implementation for JavaScript
66 lines (42 loc) • 1.71 kB
Markdown
[](https://circleci.com/gh/slim-stack/slim-stack/tree/master)
[](https://www.npmjs.com/package/slim-stack)
[](https://www.npmjs.com/package/slim-stack)
[](https://github.com/nivrith/slim-stack/blob/master/LICENSE)
stack implementation for JavaScript
- Written in Typescript
- Iterable using for...of statement
- follows LIFO model (Last in first out)
- Iterate top to bottom
## Usage
> stack implementation for JavaScript
```js
import SlimStack from 'slim-stack';
// Empty stack
let stack = new SlimStack(); //creates empty stack
stack.push(6); // Pushes 6 to top of the stack
stack.pop(); // Removes the top most element of the stack and returns it
stack.peek(); // Returns the top most element of the stack without removing it
stack.size(); // Returns the size of the stack
// Or create a stack from an array
// last element of array will be top most element of the stack
stack = new SlimStack([1,2,3,4,5]);
stack.push(6);
stack.pop(); // returns 6
stack.peek(); // returns 5
stack.size(); // returns 5
Slim Stack follows the iterator and iterable protocols making it an iterable type. Which means you can use
the for...of statement to iterate over elements of the stack from top to bottom.
for (let item of stack) {
console.log(item);
}
//5
//4
//3
//2
//1
```
MIT © [Nivrith](https://github.com/nivrith)