js查詢一個字符串內出現次數最多的字母


字符串 str = "ahasdaskdasdasjdnas";

問題:將此字符串出現次數最多的字母打印出來;

思路:申請一個json對象,遍歷字符串將字符串的字母作為屬性添加到json對象上,字母出現的次數做屬性值;

     遍歷對象屬性,將屬性值最大的打印即可

代碼:

          function index(str){
			var json = {};
			// 先聲明一個json形式的變量來存取字符串的元素,{a:1,b:3,c:4}
		     for (var j=0;j<str.length;j++){
			    if(!json[str.charAt(j)]){
				json[str.charAt(j)] = 1;
			    }else {
				json[str.charAt(j)]++;
			    }
		        };
		       // 用一個for循環進所有的字符串元素放在一個json對象中當住屬性,對象的屬性值就是出現的個數
		       console.log(json);
		       var iMax = 0;
		       var iIndex = "";
		       for (var i in json){
			   // for in 遍歷該對象,並依次比較屬性值求出最大的值並輸出該屬性即可
			   if(json[i] > iMax){
				iMax = json[i];
				iIndex = i
			    }
		       }
		       document.write("1、在此字符串中出現次數最多的是"+iIndex+"出現了"+iMax+"次</br>" );

	            }

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM