@if25b114/shuffle-array
v0.2.0
Published
A small library that takes an array as input and returns a new array that is shuffled.
Readme
@if25b114/shuffle-array (Class 2 Example)
A small library that takes an array as input and returns a new array that is shuffled.
Table of Contents
Installation
Install via npm:
npm install @if25b114/shuffle-arrayInstall via yarn:
yarn add @if25b114/shuffle-arrayUsage
Basic Usage
import shuffleArray from '@if25b114/shuffle-array';
const startArray = [1, 2, 3, 4, 5];
const newShuffledArray = shuffleArray(startArray);
console.log(startArray); // e.g., [1, 2, 3, 4, 5]
console.log(newShuffledArray); // e.g., [3, 1, 5, 2, 4]Examples
Shuffle a list of user IDs:
import shuffleArray from '@if25b114/shuffle-array';
const userIds = ['u1', 'u2', 'u3', 'u4'];
const randomizedOrderOfUserIds = shuffleArray(userIds);
console.log(randomizedOrderOfUserIds); // e.g., ['u1', 'u3', 'u4', 'u2']Use in a game for randomizing cards:
import shuffleArray from '@if25b114/shuffle-array';
const deck = ['Ace of Spades', 'Two of Hearts']; // some card deck
const shuffledDeck = shuffleArray(deck);
console.log(shuffledDeck); // e.g., ['Two of Hearts', 'Ace of Spades', ...]Usage
Du kannst nun zwischen dem normalen Shuffle und dem kryptografisch sicheren Shuffle wählen.
const { shuffleArray, cryptoShuffleArray } = require('@if25b114/shuffle-array');
const startArray = [1, 2, 3, 4, 5];
// Normaler (schneller, aber unsicherer) Shuffle
const newShuffledArray = shuffleArray(startArray);
// Kryptografisch sicherer Shuffle
const secureShuffledArray = cryptoShuffleArray(startArray);
## Contribution
Contributions are welcome! Please see [CONTRIBUTING.md](./CONTRIBUTING.md) for more details.
## Security
Please refer to our [SECURITY.md](./SECURITY.md) for information about our security policies, how to report vulnerabilities, and our approach to handling security concerns.
**Important Note**: This library uses non-cryptographic randomness (`Math.random()`). Do not rely on it for security-critical functionality.
## License
This project is licensed under the [MIT License](./LICENSE.md).