巧妙地利用时间(js中的Date对象)来生成绝对不会重复的id

接着上一篇博客说,本来利用nodejs,操作本地json文件的时候,如果是新增的话,肯定是要给新增的数据一个唯一识别的id,我上网查了很多方法,说是用数组什么的方法,我觉得太复杂,后来我看到电脑右下角的时间,灵机一动,为什么不利用js 中的 Date对象来生成绝对不重复的id值呢,而且每一次生成的时候,时间肯定是不一样的,再利用时间的13位毫秒数来当做id就是了,说干就干

上代码

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<button id = "btn">点击添加数组id</button>
</head>
<body>
	<script>
		//新建一个数组对象
		var arr = [
			{
				"id":1,
				"name":"孙悟空"
			},
			{
				"id":2,
				"name":"唐僧"
			}
		]
		// 给按钮添加点击事件
		document.getElementById("btn").onclick = function(){
			var num = Math.random();
			var date = new Date();
			date = date.getTime();//得到时间的13位毫秒数
			arr.push({
				id:date,
				name:"白龙马" + num//只是模拟一下不一样的名字而已,真实的情况下,一定不是一样的
			})
			console.log(arr);
		}
	</script>
</body>
</html>

下面看结果
这里写图片描述
一开始什么都没有,因为我还没有点击
下面点击一下
这里写图片描述

再次点击一下
这里写图片描述

ok这样就可以随便生成别对不会重复的id值了啊,哈哈,感觉自己好机智(捂脸)!!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值