ホームページ > ウェブフロントエンド > jsチュートリアル > クライアントサイド JavaScript で文字列ハッシュを生成するにはどうすればよいですか?

クライアントサイド JavaScript で文字列ハッシュを生成するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-27 00:27:09
オリジナル
872 人が閲覧しました

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

JavaScript での文字列からのハッシュ生成

文字列からのハッシュの作成は、セキュリティやデータ構造化などのさまざまなアプリケーションにとって不可欠な操作です。サーバーサイド言語が利用できないクライアントサイド JavaScript 環境では、この目標を達成するには特定のアプローチが必要です。

メソッド:

JavaScript は、ハッシュに対する簡単なソリューションを提供します。 hashCode 関数による生成。これは文字列のプロトタイプ メソッドとして拡張できます。この関数は文字列を 1 文字ずつ繰り返し、特定のビット単位の演算を適用して一意のハッシュ値を計算します。

コード例:

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());
ログイン後にコピー

この例では、文字列「revenue」のハッシュ コードが計算され、 console.

説明:

hashCode 関数は次の操作を実行します:

  1. ハッシュ変数を 0 に初期化します。
  2. 文字列内の各文字をループします。
  3. 文字の Unicode コード ポイントが整数を指します。
  4. ビット単位のシフトと減算をハッシュ変数に適用して、整数を組み込みます。
  5. パイプ演算子を使用して結果を 32 ビット整数に変換します。
  6. 計算されたハッシュを返しますcode.

利点:

hashCode メソッドを使用すると、次のような利点があります。

  • サーバーを必要としないクライアント側の実装。副言語。
  • 簡潔でわかりやすいcode.
  • さまざまな文字列入力に対して一意のハッシュ コードを生成します。

以上がクライアントサイド JavaScript で文字列ハッシュを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート