?////?//每個(gè)字符出現(xiàn)的次數(shù)耿芹,以及出現(xiàn)次數(shù)最多的那個(gè)字符
????????//??let?str?=?'hello?world?.?i?like?javascript.'
????????////定義一個(gè)空的對(duì)象用來(lái)存儲(chǔ)上方字符串的每一個(gè)字符出現(xiàn)的次數(shù)
????????//??let?obj={}
????????////定義一個(gè)對(duì)象用來(lái)輸出出現(xiàn)次數(shù)最多的字符和出現(xiàn)的次數(shù)
????????////在對(duì)象里面的name:定義為字符串類型,這樣在替換的時(shí)候做出相應(yīng)的判斷
????????////count:為出現(xiàn)的次數(shù)腊徙,所以應(yīng)該是數(shù)字類型屋摔,定義的初始值為0
????????//??let?maxcode={
????????//??????name:"",
????????//??????conut:0
????????//??}
????????////利用for循環(huán)遍歷數(shù)組中的每一個(gè)字符
????????//??for(let?i=0;i<str.length;i++){
????????????////判斷上面的字符是否為空格烁设,如果不是空格則走下面的代碼
????????//??????if(str[i]!=='?'){
????????????////定義一個(gè)變量用來(lái)接收循環(huán)遍歷的每一個(gè)字符串的元素
????????//??????????let?key?=str[i]
????????////如果上面的對(duì)象obj里面的值沒(méi)有字符串遍歷循環(huán)中的元素,則將屬性名為key賦值為1
????????////利用undefined的特性利用循環(huán)給對(duì)象里面每一個(gè)字符添加到對(duì)象里面去
????????//??????????if(obj[key]===undefined){
????????//??????????????obj[key]=1
????????//??????????}
????????////反之钓试,上面的對(duì)象在循環(huán)中里面已經(jīng)存在這個(gè)字符署尤,相應(yīng)給自身加1
????????//??????????else{
????????//??????????????obj[key]++
????????//??????????}
????????////在利用上方聲明的對(duì)想maxcode來(lái)判斷出現(xiàn)次數(shù)最多的字符
????????////如果obj[key]對(duì)象里面值大于maxcode.conut
????????////則把對(duì)象為maxcode里面name和count轉(zhuǎn)化為在循環(huán)里面的字符
????????////obj[key]也就是字符在循環(huán)過(guò)程中出現(xiàn)的次數(shù),利用循環(huán)的特性一個(gè)接著替換最后得到了一個(gè)出現(xiàn)次數(shù)最多的字符和出現(xiàn)的次數(shù)
????????//??????????if(obj[key]>maxcode.conut){
????????//??????????????maxcode.name=key
????????//??????????????maxcode.conut=obj[key]
????????//??????????}
????????//??????}
????????//??}
????????////最后輸出對(duì)象也就是上方字符串里面的每一個(gè)字符出現(xiàn)的次數(shù)和字符
????????//??console.log(obj);
????????//??console.log(`出現(xiàn)次數(shù)最多的字符是${maxcode.name}出現(xiàn)了${maxcode.conut}`);