Vorwort: Es gibt eine bessere Möglichkeit, eine eindeutige ID zu haben: 1. Warum NanoID UUID ersetzt 1. Sicherer: Die meisten Zufallsgeneratoren verwenden das unsichere 2. Es ist schnell und kompakt. Darüber hinaus unterstützt NanoID 14 verschiedene Programmiersprachen: C#, C++, Clojure und ClojureScript, Crystal, Dart & Flutter, Deno, Go, Elixir, Haskell, Janet, Java, Nim, Perl, PHP, Python mit Wörterbüchern, Ruby, Rust, Swift 3. Kompatibilität Es unterstützt auch 2. So generieren Sie jsMal sehen, wie sie mit js generiert werden Lassen Sie uns zunächst darüber sprechen, wie wir zuvor Methode 1: Funktion guid() { return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, Funktion (c) { var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8); gibt v.toString(16) zurück; }); } guid() // "a1ca0f7b-51bd-4bf3-a5d5-6a74f6adc1c7" Methode 2: var _S4 = Funktion() { return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1) } // Holen Sie sich die eindeutige ID der Anzeigenanfrage. Ist es der aktuelle Zeitstempel + 13 zufällige Ziffern? export function GetsingleId() { var _res = (_S4() + _S4() + '-' + _S4() + '-' + _S4() + '-' + _S4() + '-' + _S4() + '-' + _S4() + _S4() + _S4()) returniere '_' + Konfigurationsversion + '_' + _res } Methode 3: Funktion uuid() { var s = []; var hexDigits = "0123456789abcdef"; für (var i = 0; i < 36; i++) { s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1); } s[14] = "4"; // Bits 12-15 des Feldes time_hi_and_version auf 0010 s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // Bits 6-7 der clock_seq_hi_and_reserved auf 01 s[8] = s[13] = s[18] = s[23] = "-"; var uuid = s.join(""); UUID zurückgeben; } uuid() // "ffb7cefd-02cb-4853-8238-c0292cf988d5" 3. NanoID-Methodeimportiere { nanoid } von 'nanoid' let idA = nanoid() //=> "V1StGXR8_Z5jdHi6B-myT" //Sie können auch die Länge des generierten Strings angeben let idB = nanoid(5) Es kann hauptsächlich in Form eines NPM-Pakets installiert werden. Der Kerncode lautet wie folgt: let urlAlphabet = „useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict“ lass nanoid = (Größe = 21) => { lass id = '' // Eine kompakte Alternative für „for (var i = 0; i < step; i++)“. sei i = Größe während (i--) { // `| 0` ist kompakter und schneller als `Math.floor()`. id += urlAlphabet[(Math.random() * 64) | 0] } Rücksende-ID } Dies ist das Ende dieses Artikels über UUID und NanoID, die Methoden zum Generieren eindeutiger IDs in JS. Weitere Informationen zum Generieren eindeutiger IDs in JS finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Der Unterschied zwischen Div und Tabelle in Geschwindigkeit, Laden, Webanwendung usw.
>>: htm-Anfängerhinweise (unbedingt für Anfänger lesen)
Inhaltsverzeichnis 1. Datenbank-Master-Slave-Klas...
Inhaltsverzeichnis Ursache des Vorfalls Verwenden...
Bevor wir JSX zum Erstellen eines Komponentensyst...
Inhaltsverzeichnis Einführung Spiegel-Repository ...
Inhaltsverzeichnis Linux MySQL 5.5 auf MySQL 5.7 ...
Inhaltsverzeichnis 1. Seiten-Rendering 2. Tags hi...
MySql-Batch-Insert-Optimierung. Beispiel für SQL-...
1. HTML-Bild <img> 1. Das <img>-Tag u...
Erste Verwendung von Docker zum lokalen Verpacken...
Schwarmclusterverwaltung Einführung Docker Swarm ...
MySQL meldet einen Fehler beim Ausführen einer Ab...
Als ich kürzlich an CSS-Schnittstellen arbeitete,...
Inhaltsverzeichnis Download des Installationspake...
Windows cmd Telnet Format: Telnet-IP-Port Fall: T...
<br />Navigation bezieht sich nicht nur auf ...