Maison > interface Web > js tutoriel > Comment puis-je générer des hachages de chaînes en JavaScript côté client ?

Comment puis-je générer des hachages de chaînes en JavaScript côté client ?

Patricia Arquette
Libérer: 2024-12-27 00:27:09
original
872 Les gens l'ont consulté

How Can I Generate String Hashes in Client-Side JavaScript?

Génération de hachage à partir d'une chaîne en JavaScript

La création de hachages à partir de chaînes est une opération essentielle pour diverses applications, telles que la sécurité et la structuration des données. Dans les environnements JavaScript côté client, où les langages côté serveur ne sont pas disponibles, atteindre cet objectif nécessite une approche spécifique.

Méthode :

JavaScript fournit une solution simple pour le hachage génération via la fonction hashCode, qui peut être étendue en tant que méthode prototype pour les chaînes. Cette fonction parcourt la chaîne caractère par caractère, en appliquant des opérations au niveau du bit spécifiques pour calculer une valeur de hachage unique.

Exemple de code :

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;
}

const str = 'revenue';
console.log(str, str.hashCode());
Copier après la connexion

Dans cet exemple, le Le code de hachage pour la chaîne « revenu » est calculé et enregistré dans le console.

Explication :

La fonction hashCode effectue les opérations suivantes :

  1. Initialise une variable de hachage à 0.
  2. Parcourt chaque caractère de la chaîne.
  3. Convertit le caractère Le code Unicode pointe vers un entier.
  4. Applique un décalage au niveau du bit et une soustraction à la variable de hachage pour incorporer l'entier.
  5. Convertit le résultat en un entier de 32 bits à l'aide de l'opérateur pipe.
  6. Renvoie le hachage calculé code.

Avantages :

L'utilisation de la méthode hashCode offre plusieurs avantages :

  • Implémentation côté client sans nécessiter de serveur- langues secondaires.
  • Simple et facile à comprendre code.
  • Génère des codes de hachage uniques pour différentes entrées de chaîne.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal