L'exemple de cet article décrit comment JavaScript compte le nombre d'occurrences de chaque caractère dans une chaîne. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Il s'agit d'une question d'entretien. On vous demande de vous donner une chaîne aléatoire et de trouver le nombre d'occurrences de chaque caractère dans la chaîne.
Jetons un coup d'œil aux captures d'écran de l'effet de course :
Le code spécifique est le suivant :
<!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>
Les lecteurs intéressés par plus de contenu lié aux algorithmes JavaScript peuvent consulter les sujets spéciaux sur ce site : "Résumé des algorithmes de tri JavaScript", "Résumé des algorithmes et techniques de traversée JavaScript" et "Résumé de la structure des données JavaScript et des compétences en algorithmes》
J'espère que cet article sera utile à tout le monde dans la programmation JavaScript.