Files
30-seconds-of-code/snippets/randomAlphaNumeric.md
Isabelle Viktoria Maciohsek 27c168ce55 Bake date into snippets
2021-06-13 13:55:00 +03:00

30 lines
1.0 KiB
Markdown

---
title: randomAlphaNumeric
tags: string,random,advanced
firstSeen: 2020-10-06T18:33:29+03:00
lastUpdated: 2020-10-22T20:24:04+03:00
---
Generates a random string with the specified length.
- Use `Array.from()` to create a new array with the specified `length`.
- Use `Math.random()` generate a random floating-point number, `Number.prototype.toString(36)` to convert it to an alphanumeric string.
- Use `String.prototype.slice(2)` to remove the integral part and decimal point from each generated number.
- Use `Array.prototype.some()` to repeat this process as many times as required, up to `length`, as it produces a variable-length string each time.
- Finally, use `String.prototype.slice()` to trim down the generated string if it's longer than the given `length`.
```js
const randomAlphaNumeric = length => {
let s = '';
Array.from({ length }).some(() => {
s += Math.random().toString(36).slice(2);
return s.length >= length;
});
return s.slice(0, length);
};
```
```js
randomAlphaNumeric(5); // '0afad'
```