0
私はUUID
を生成するために以下のタイスクリプト方法を使用しています。コードそのものは基本的にはstackoverflow answerのタイスクリプト版です。uuid作成のビット演算子の代わり
generateUUID(): string {
let date = new Date().getTime();
if (window.performance && typeof window.performance.now === 'function') {
date += performance.now();
}
let uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
let r = (date + Math.random() * 16) % 16 | 0;
date = Math.floor(date/16);
return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);
});
return uuid;
};
当社の開発チームは、クリーンなコードを維持するためにTSLint
を使用して、我々はbitwise operators
を使用するように禁じるルールを持っています。私はUUIDジェネレータの暗号の面を損なうことなくこのコードを書き換える方法は知らない。このコードをどのように書き直すことができますか、これはまったく意味がありませんか?
なぜビット演算子を禁止するルールがありますか?それは変だ。 – Pointy
私はそれも変だと思いますが、これは私の決定ではありませんでした。 –
TSLintルールはバグです。コードではありません – slebetman