本文實例講述了JavaScript統計字符串中每個字符出現次數的方法。分享給大家供大家參考,具體如下:
這是一個面試題,要求隨便給你一個字符串,讓你求出字符串中每個字符出現的次數。
先來看看運行效果截圖:
具體代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>求字符串中每個字符出現的次數 </title> <script type="text/javascript"> var str = "abdcadfasfdbadfafdasdfasyweroweurowqrewqrwqrebwqrewqrejwq;;"; var array = str.split(""); array.sort(); var countArray = []; var CountObj = function(character){ this.count = 1 this.character = character; return this; } var arrayObj = null, countArrayObj = null, arrayLength = 0; for (var i = 0, length = array.length; i < length; i++) { arrayObj = array[i]; arrayLength = countArray.length; if (arrayLength > 0) { countArrayObj = countArray[arrayLength - 1]; if (countArrayObj.character == arrayObj) { countArrayObj.count = countArrayObj.count + 1; } else { countArray.push(new CountObj(arrayObj)); } } else { countArray.push(new CountObj(arrayObj)); } } /** * 輸出每個字母和其對應出現的統計數據 */ for(var i=0,length=countArray.length; i<length; i++) { countArrayObj = countArray[i]; console.log(countArrayObj.character + ":" + countArrayObj.count); } </script> </head> <body> </body> </html>
更多關於JavaScript算法相關內容感興趣的讀者可查看本站專題:《JavaScript排序算法總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數據結構與算法技巧總結》
希望本文所述對大家JavaScript程序設計有所幫助。