| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- const hexList: string[] = [];
- for (let i = 0; i <= 15; i++) {
- hexList[i] = i.toString(16);
- }
- export function buildUUID(): string {
- let uuid = '';
- for (let i = 1; i <= 36; i++) {
- if (i === 9 || i === 14 || i === 19 || i === 24) {
- uuid += '-';
- } else if (i === 15) {
- uuid += 4;
- } else if (i === 20) {
- uuid += hexList[(Math.random() * 4) | 8];
- } else {
- uuid += hexList[(Math.random() * 16) | 0];
- }
- }
- return uuid.replace(/-/g, '');
- }
- let unique = 0;
- export function buildShortUUID(prefix = ''): string {
- const time = Date.now();
- const random = Math.floor(Math.random() * 1000000000);
- unique++;
- return prefix + '_' + random + unique + String(time);
- }
- export function getlowerCaseChars() {
- return Array.from({ length: 26 }).map((_, index) => String.fromCharCode(index + 97));
- }
- export function getUpperCaseChars() {
- return Array.from({ length: 26 }).map((_, index) => String.fromCharCode(index + 65));
- }
- export function randomString(length = 20) {
- const upperCaseChars = getUpperCaseChars();
- const lowerCaseChars = getlowerCaseChars();
- const numberChars = Array.from({ length: 10 }).map((_, index) => index);
- const allChars = [...numberChars, ...upperCaseChars, ...lowerCaseChars].sort(
- () => 0.5 - Math.random()
- );
- const rangeFn = () => (Math.random() * 63) | 0;
- return Array.from({ length })
- .map(() => allChars[rangeFn()])
- .join('');
- }
|