📅  最后修改于: 2023-12-03 15:13:05.067000             🧑  作者: Mango
在Web开发中,我们常常需要为DOM元素生成唯一的ID,以进行后续操作。Javascript提供了几种方法生成唯一ID,本文将介绍其中一种简单而又高效的方法。
我们可以通过生成随机数并用时间戳作为前缀,保证生成的ID是唯一的。实现代码如下:
const uniqueID = () => {
const prefix = new Date().getTime().toString(36);
const randomStr = Math.random().toString(36).substr(2, 5);
return `${prefix}-${randomStr}`;
}
这里用到了ES6的箭头函数。函数内部首先生成了以时间戳为前缀的字符串,然后利用Math对象的random方法生成一个随机字符串作为ID的一部分。最后将两个字符串拼接在一起返回即可。
在使用时,我们可以将该函数赋值给变量或者直接调用:
const myID = uniqueID(); // '1jfpka-3ary3'
document.getElementById(myID); // 获取ID为'1jfpka-3ary3'的元素
这种方法生成的ID是唯一的且长度适中,适用于大部分情况。但是在高并发的情况下,仍然存在重复ID的可能性,建议在使用时结合具体业务场景进行适当的校验。