巧妙地利用時間(js中的Date物件)來生成絕對不會重複的id
阿新 • • 發佈:2019-01-30
接著上一篇部落格說,本來利用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值了啊,哈哈,感覺自己好機智(捂臉)!!