javascript - 關於某個字元在字串中出現的次數統計,網路上看到一段程式碼其中有個地方看不懂什麼意思
迷茫
迷茫 2017-06-12 09:33:03
0
1
961

今天自己用split()方法實作了統計某個字元在字串中出現的次數,順便又百度了一下,看看有沒有其它方法,結果看到下面這段函數,但其中的 count ; offset = subStr.length;有點看不懂是什麼意思,請路過的前輩解惑!

function countInstances (mainStr, subStr) {
    var count = 0;
    var offset = 0;
    do{
        offset = mainStr.indexOf(subStr, offset); // 通过indexOf获得某字符在字符串中出现的位置
        if( offset != -1 ) { // 如果某字符存在于字符串中
            count++;
            offset += subStr.length;
        }
    } while ( offset != -1 );
    return count;
}
countInstances('www.segmentfault.com', '.')
// alert( countInstances('www.segmentfault.com', '.') );
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回覆(1)
typecho

indexOf用法
count++; offset += subStr.length;
count表示的是計數器,記下字元出現的次數
offset值給每個父親的offset 索引位置開始找子字串subStroffset
找到了,就count+1,再從offset += subStr.length的位置開始找,因為最初判斷indexOoff找到子字串的索引。 。 我好像說的有的複雜,其實很簡單的,你在紙上畫下執行過程就知道了

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!