123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- const hexList: string[] = []
- for (let i = 0; i <= 15; i++) {
- hexList[i] = i.toString(16)
- }
- /**
- * 生成随机数
- * @param min 最小值
- * @param max 最大值
- * @returns 生成的随机数
- */
- export function randomNum(min: number, max: number) {
- switch (arguments.length) {
- case 1:
- return parseInt((Math.random() * min + 1).toString(), 10)
- break
- case 2:
- return parseInt((Math.random() * (max - min + 1) + min).toString(), 10)
- break
- default:
- return 0
- break
- }
- }
- /**
- * 生成全球唯一标识
- * @returns uuid
- */
- export function uuid(): 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
- }
- /**
- * 生成唯一标识
- * @param prefix 前缀
- * @returns 唯一标识
- */
- export function shortUuid(prefix = ''): string {
- const time = Date.now()
- const random = Math.floor(Math.random() * 1000000000)
- if (!window.unique) window.unique = 0
- window.unique++
- return prefix + '_' + random + window.unique + String(time)
- }
|