js问题:字符串 统计个数

这数组原来是有空格的就是 str=(’Abcdefga Abcdefgb Abcdefgc Abcdefgd Abcdefgf‘) 然后用一下代码可以实现count 计数
但是我把空格删了就不行了 因为split 识别不了空格了 我想问一下怎么统计没有空格字符串中 def的个数

html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>作业title>
    head>
    <script type="text/javascript">
        var str='AbcdefgAbcdefgAbcdefgAbcdefgAbcdefg';
        var count=0;
        var arr=str.split("");
        for(var i=0;ilength;i++)
        {
            var b=arr[i].indexOf('def');
            if(b>=0  )
            count++;
        }
        document.write("一共有"+count+"个");
        
    script>
    <body>
    body>
html>


'AbcdefgAbcdefgAbcdefgAbcdefgAbcdefg'.match(/def/g).length