产生一段随机数

在公司项目中看到的一段代码
更新于: 2024-01-03 09:26:25
Array.from({ length: 32 }, () =>
  Math.floor(Math.random() * 16).toString(16),
).join('')

/* ----------- 代码分解 ----------- */
// 1. 产生0-15.x的随机数
Math.random() * 16
// 2. 产生一个不大于16的整数
Math.floor(Math.random() * 16)
// 3. 将整数转化为16进制
(1).toString(16)
(15).toString(16);

/* ----------- Array.from ----------- */
// 1. 只使用一个参数,从 ArrayLike 中产生一个数组
Array.from({length: 10})
// 2.MapFn,产生1-10的顺序数组
Array.from({length: 10}, (item, index)=>(index+1))