随机生成 UUID

1、随机生成 UUID主方法

/**
 * 随机生成 UUID
 * @param {*} len   生成字符串的长度
 * @param {*} radix  生成随机字符串的长度
 *
 */

export function uuid_(len = 30, radix = 20) {
  var chars =
    '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('')
  var uuid = [],
    i
  radix = radix || chars.length

  if (len) {
    // Compact form
    for (i = 0; i < len; i++) uuid[i] = chars[0 | (Math.random() * radix)]
  } else {
    // rfc4122, version 4 form
    var r

    // rfc4122 requires these characters
    uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-'
    uuid[14] = '4'

    // Fill in random data.  At i==19 set the high bits of clock sequence as
    // per rfc4122, sec. 4.1.5
    for (i = 0; i < 36; i++) {
      if (!uuid[i]) {
        r = 0 | (Math.random() * 16)
        uuid[i] = chars[i == 19 ? (r & 0x3) | 0x8 : r]
      }
    }
  }

  return uuid.join('')
}

2、使用 uuid: uuid_()

import {uuid_} from '@/utils/uuid'
// 定义一个辅助函数来处理雨前和雨中的数据
    processList(dataList) {
      return (dataList || [])
        .filter((item) => item.subCode == this.rscd)
        .map((item) => {
          const defaultValues = { kd1: null, ll: null, needTm: null }
          const ddSz =
            item.ddSzList && item.ddSzList.length > 0
              ? item.ddSzList[0]
              : defaultValues
          return {
            ...item,
            uuid: uuid_(),
            kd1: ddSz.kd1,
            ll: ddSz.ll,
            needTm: ddSz.needTm
          }
        })
    }

3、得到"uuid": “2878J1AHGECHE51D11147244H69F72”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ciito

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值