Update and rename randomString.md to randomAlphaNumeric.md
This commit is contained in:
27
snippets/randomAlphaNumeric.md
Normal file
27
snippets/randomAlphaNumeric.md
Normal file
@ -0,0 +1,27 @@
|
||||
---
|
||||
title: randomAlphaNumeric
|
||||
tags: string,random,advanced
|
||||
---
|
||||
|
||||
Returns 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'
|
||||
```
|
||||
Reference in New Issue
Block a user