https://github.com/mirismaili/shufflable-array
Extended javascript native Array with an additional shuffle() method
https://github.com/mirismaili/shufflable-array
array built-in-array builtin-array native-array safe shufflable shuffle shuffleable
Last synced: 5 months ago
JSON representation
Extended javascript native Array with an additional shuffle() method
- Host: GitHub
- URL: https://github.com/mirismaili/shufflable-array
- Owner: mirismaili
- License: mit
- Created: 2021-05-06T03:50:44.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2021-05-15T07:52:00.000Z (about 5 years ago)
- Last Synced: 2025-08-09T16:02:01.295Z (10 months ago)
- Topics: array, built-in-array, builtin-array, native-array, safe, shufflable, shuffle, shuffleable
- Language: JavaScript
- Homepage:
- Size: 6.84 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Shufflable-Array
> Extended javascript native `Array` (`[]`) with an additional
> (**[in-place](https://en.wikipedia.org/wiki/In-place_algorithm)**) `shuffle()` method
>
> ***This doesn't modify `Array.prototype`.***
[](https://npmjs.com/package/shufflable-array)
[](https://packagephobia.now.sh/result?p=shufflable-array)
[](https://npmjs.com/package/shufflable-array)
[](https://david-dm.org/mirismaili/shufflable-array)
[](https://david-dm.org/mirismaili/shufflable-array?type=dev)
[](https://github.com/mirismaili/shufflable-array/blob/master/LICENSE)
[](https://github.com/mirismaili/shufflable-array/fork)
[](https://github.com/mirismaili/shufflable-array)
```bash
npm i shufflable-array
```
or:
```bash
yarn add shufflable-array
```
## Usage
```javascript
import ShufflableArray from 'shufflable-array'
const shufflableArray = new ShufflableArray(1, 2, 3, 4, 5)
console.log(shufflableArray instanceof Array) // => true
shufflableArray.shuffle() // => Ex. [ 5, 1, 4, 3, 2 ]
```
## Example
```javascript
import ShufflableArray from 'shufflable-array'
const shufflableArray = new ShufflableArray(1, 2, 3, 4, 5)
console.log(shufflableArray) // => ShufflableArray(5) [ 1, 2, 3, 4, 5 ]
console.log(shufflableArray[2], shufflableArray[5]) // => 3 undefined
console.log(shufflableArray.length) // => 5
shufflableArray.push(6)
console.log(shufflableArray) // => ShufflableArray(6) [ 1, 2, 3, 4, 5, 6 ]
shufflableArray[5] = 0
console.log(shufflableArray) // => ShufflableArray(6) [ 1, 2, 3, 4, 5, 0 ]
const shuffledArray = shufflableArray.shuffle()
console.log(shufflableArray) // => Ex. ShufflableArray(6) [ 1, 3, 5, 4, 0, 2 ]
console.log(shufflableArray === shuffledArray) // => true
```