Heim >Web-Frontend >js-Tutorial >Wie kann ich Hash-Schlüssel aus Strings in JavaScript generieren?

Wie kann ich Hash-Schlüssel aus Strings in JavaScript generieren?

DDD
DDDOriginal
2024-12-14 01:41:11541Durchsuche

How Can I Generate Hashed Keys from Strings in JavaScript?

Hash-Schlüssel in JavaScript

Das Generieren von Hashes aus Strings ist für die Datenspeicherung und den Datenabruf unerlässlich. In JavaScript, wo serverseitige Sprachen nicht verfügbar sind, müssen andere Hashing-Mechanismen untersucht werden.

Benutzerdefinierte Hash-Funktion in JavaScript

Um diesen Bedarf zu erfüllen, können wir erstellen eine benutzerdefinierte Hash-Funktion, die die integrierte hashCode()-Methode verwendet:

String.prototype.hashCode = function() {
  var hash = 0,
    i, chr;
  if (this.length === 0) return hash;
  for (i = 0; i < this.length; i++) {
    chr = this.charCodeAt(i);
    hash = ((hash << 5) - hash) + chr;
    hash |= 0; // Convert to 32bit integer
  }
  return hash;
};

Beispiel Verwendung:

Jetzt können Sie diese Methode für jede Zeichenfolge aufrufen, um einen Hash zu generieren:

const str = 'revenue';
console.log(str, str.hashCode());

Dies wird Folgendes ausgeben:

revenue -587845866

Fazit

Durch die Nutzung der benutzerdefinierten Funktion hashCode() in JavaScript können wir Zeichenfolgen effizient in Hash umwandeln Werte. Diese Technik ist wertvoll für den Aufbau von Datenstrukturen, die Optimierung von Suchalgorithmen und die Verbesserung der Datenintegrität.

Das obige ist der detaillierte Inhalt vonWie kann ich Hash-Schlüssel aus Strings in JavaScript generieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn