JavaScriptは文字の出現回数をカウントします

JavaScriptは文字の出現回数をカウントします

この記事の例では、文字の出現回数をカウントするJavaScriptの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

ユーザー入力文字列内の各文字の出現回数をカウントします。

たとえば、入力文字列が「abca12abbc121d」の場合、出力は、a が 3 回、b が 3 回、c が 2 回、d が 1 回、1 が 3 回、2 が 2 回出現します。

方法1

<スクリプト>
 var ary = "abca12abbc121d";
 
 var obj = {};
 var i = 0;
 ary1 = ary.toLocaleLowerCase(); 
 
 (i = 0; i < ary1.length; i++) の場合
 {
 キー = ary1[i];
 if(オブジェクト[キー])
 {
 //オブジェクトにはこの文字が含まれています obj[key]++;
 }
 それ以外
 {
 //オブジェクトにはこの文字がないので、オブジェクトに文字を追加します。obj[key] = 1;
 }
 }
 
 for(var key in obj) //このオブジェクトを走査します {
 console.log(key + "この文字が出現する" + obj[key] + "回");
 }
</スクリプト>

効果は以下のとおりです。

このメソッドは開発者ツールを使用して実装されます

方法2

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
 <メタ文字セット="UTF-8">
 <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
 <title>ドキュメント</title>
 <script src="sc/char-sunmmary.js"></script>
 <スクリプト>
 window.onload = 関数(){
  var txtChars = document.getElementById("txt-chars");
  var show = document.getElementById("show");
  document.getElementById("btn-ok").onclick=function(){
  var str=txtChars.値;
  var charTotal = total(str);
  // 降順 charTotal.sort(function(a,b){
   (a.count-b.count)*-1 を返します。
  })
  
  show.innerHTML="<ul>";
  //slice(0,5)は最初の5つを取得します for(var ct of charTotal.slice(0,5)){
   show.innerHTML+="<li>"+ct.char+" が "+ct.count+" 回出現しました</li>";
  }
  show.innerHTML+="</ul>";
  }
 }
 </スクリプト>
</head>
<本文>
 <label for="txt-chars">文字列を入力してください:</label>
 <input type="text" id="txt-chars" name=""/>
 <button id="btn-ok">OK</button>
 <p id="表示"></p>
</本文>
</html>

char-sunmmary.js

関数Summary(char,count) {
 this.char=char;
 this.count=カウント;
}
// 文字列を渡して出現頻度を返す function total(str) {
 var 結果 = [];
 for(var c of str){
 var charObj = checkChar(結果、c);
 if(charObj==null){
  結果.push(新しいサマリー(c,1));
 }
 それ以外{
  charObj.count++;
 }
 }
 結果を返します。
}
// 配列 arr 内の文字 char を含むサマリーインスタンスを検索します // 存在する場合はインスタンスを返し、存在しない場合は null を返します
関数 checkChar(arr,char) {
 var r = null;
 for(var c of arr){
 c.char ==charの場合{
  r=c;
  壊す;
 }
 }
 r を返します。
} 

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • JavaScriptは文字列内の各文字の出現回数をカウントします。完全な例
  • 最も頻繁に出現する文字の数をカウントする js コード
  • JavaScript で charAt() を使用して、最も頻繁に出現する文字とその出現回数をカウントする方法を教えます。

<<:  Serv-U FTPとADの完璧な統合ソリューションの詳細な説明

>>:  MySQL 5.7.17 のインストールと設定のグラフィックチュートリアル

推薦する

Tomcat イメージをインストールして Docker に Web プロジェクトをデプロイする方法を簡単に説明します。

1. Tomcatをインストールする1. Docker HubでTomcatイメージを見つける d...

ECMAscript の新機能の紹介

目次1. 関数パラメータのデフォルト値1.1 関数パラメータのデフォルト値の指定1.2 分離割り当て...

Docker Compose のサイドカーモードの詳細な説明

目次Docker Composeとは要件に不適切な言語が使用されている実装Docker Compos...

JavaScript配列の一般的なメソッドの詳細な説明

目次元の配列を変更しない方法1. 連結文法:パラメータ:戻り値: 2. 参加する文法:パラメータ:戻...

Vue.jsはタイムライン機能を実装します

この記事では、タイムライン機能を実装するためのVue.jsの具体的なコードを参考までに共有します。具...

Node.js+express+socket でオンラインのリアルタイム多人数チャットルームを実現

この記事では、オンラインリアルタイム多人数チャットルームを実現するためのNode.js+expres...

vue.js ルーターのネストされたルートの実例

目次序文Vue CLI での設定基本コードVueルーターの登場ネストされたルートの設定要約する序文V...

ElementuiはデータをxlsxとExcelテーブルにエクスポートします

最近、Vue プロジェクトについて知り、ElementUI でデータを xlsx および Excel...

JS 正規マッチングの落とし穴の記録

最近、JS の正規表現マッチングの落とし穴を発見したのですが、その時はあまりにも奇妙だったので、何か...

jsはFileReaderを使用してローカルファイルまたはBLOBを読み取ります

目次FileReaderはローカルファイルまたはBLOBを読み取ります1. FileReaderの使...

Nexus をベースに Alibaba Cloud プロキシ ウェアハウスを構成するプロセスの分析

Nexus のデフォルトのリモートリポジトリは https://repo1.maven.org/ma...

要素フォーム検証で検証プロンプトをクリアする方法

目次問題のシナリオ:解決: 1. フィールドを個別にチェックする2. フォームフィールドの下のフィー...

MySQL データベースのマスター・スレーブ レプリケーションと読み取り/書き込み分離

目次1. マスタースレーブレプリケーションマスタースレーブレプリケーション3スレッドマスタースレーブ...

CentOS 7 で Docker のポート転送をファイアウォールと互換性のあるように設定する方法

CentOS 7 では、次のようなコマンドを使用してホスト ポートをコンテナー ポートにマッピングす...

CentOS7 で yum ソースをインストールし、コマンド rz と sz をアップロードおよびダウンロードする方法 (画像付き)

** CentOS7 で yum ソースをインストールし、rz および sz コマンドをアップロー...