- 前端图片校验码请求 (1+Math.random()) 结果是1点几的数值。
Math.random() 生成 [ 0 , 1 )
0x10000 16进制换成十进制就是65536,换成五位数字符串
(1+Math.random())*0x10000 生成1~65536的随机数
(1+Math.random())*0x10000 | 0 位运算,确切的说是或运算。一个数跟 0 做或运算,等于只保留这个数的整数部分
((1+Math.random())*0x10000 | 0).toString(16) 转成十六进制 ,换成五位数字符串, 例如:'162a4'
((1+Math.random())*0x10000 | 0).toString(16).substring(1) 从下标为1开始包含,截断,得到一个四位数的随机字符串,例如: 62a4
UUIDGenerator: () => {
function S4 () {
return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1)
}
return (
S4() +
S4() +
'-' +
S4() +
'-' +
S4() +
'-' +
S4() +
'-' +
S4() +
S4() +
S4()
)
},