1. ホーム
  2. javascript

[解決済み] javascriptでユニークな番号を作成する time

2022-08-28 21:16:38

質問

javascriptを使用して、その場でユニークなid番号を生成する必要があります。過去に、私は時間を使用して番号を作成することによってこれを行いました。 この番号は、4桁の年、2桁の月、2桁の日、2桁の時間、2桁の分、2桁の秒、3桁のミリ秒から構成されています。つまり、次のようになる。20111104103912732 ...これなら、私の目的には十分な一意性のある数字になります。

これをやってからしばらく経ちますが、もうコードを持っていません。どなたかこれを行うコードをお持ちの方、または一意の ID を生成するためのより良い提案をお持ちの方はいらっしゃいますか?

どのように解決するのですか?

一意的な数字が欲しいだけなら

var timestamp = new Date().getUTCMilliseconds();

を実行すると、単純な数値が得られます。しかし、読みやすいバージョンが必要な場合は、少し加工が必要です。

var now = new Date();

timestamp = now.getFullYear().toString(); // 2011
timestamp += (now.getMonth < 9 ? '0' : '') + now.getMonth().toString(); // JS months are 0-based, so +1 and pad with 0's
timestamp += ((now.getDate < 10) ? '0' : '') + now.getDate().toString(); // pad with a 0
... etc... with .getHours(), getMinutes(), getSeconds(), getMilliseconds()