Dùng mảng lưu tần suất từng ký tự. Nếu ký tự trùng, tăng 1, ngược lại gán 1.
Giả sử chuỗi:
var sentence = "My name is John Smith";
Mã đếm xuất hiện:
Ví dụ
var sentence = "My name is John Smith"; sentence=sentence.toLowerCase(); var noOfCountsOfEachCharacter = {}; var getCharacter, counter, actualLength, noOfCount; for (counter = 0, actualLength = sentence.length; counter < actualLength; ++counter) { getCharacter = sentence.charAt(counter); noOfCount = noOfCountsOfEachCharacter[getCharacter]; noOfCountsOfEachCharacter[getCharacter] = noOfCount ? noOfCount + 1: 1; } for (getCharacter in noOfCountsOfEachCharacter) { if(getCharacter!=' ') console.log("Character="+getCharacter + " Occurrences=" + noOfCountsOfEachCharacter[getCharacter]); }Chạy: node fileName.js. File demo40.js.
Kết quả
PS C:\Users\Amit\JavaScript-code> node demo40.js Character=m Occurrences=3 Character=y Occurrences=1 Character=n Occurrences=2 Character=a Occurrences=1 Character=e Occurrences=1 Character=i Occurrences=2 Character=s Occurrences=2 Character=j Occurrences=1 Character=o Occurrences=1 Character=h Occurrences=2 Character=t Occurrences=1