取一个字符串并返回字符串中的单词数 - JavaScript

时间:2014-01-09 18:46:50

标签: javascript string split

我正在处理来自CoderByte的问题。我很好奇我的代码。第一个函数returns 6和第二个函数returns 4是正确的计数。我试图理解为什么会这样。当我登录日志newArr时,它只显示4个项目。

以下是来自CoderByte的问题: - 使用JavaScript语言,让函数WordCount(str)获取传递的str字符串参数并返回单词数 该字符串包含(即。#34;永远不要吃碎小麦"将返回4)。单词将由单个空格分隔。

var wordCount = function (str) {
    var newArr = str.split(' ');
    var total = 0;
    for (var i = 0; i < newArr.length; i += 1) {
        total += i;
    }
    return total;
};

///

wordCount('Never eat shredded wheat');

var wordCount = function (str) {
    return str.split(' ').length;
};

1 个答案:

答案 0 :(得分:7)

因为您要添加i而不是一个。

total += i;

基本上你有

iteration 1 : total = total + 0 = 0 + 0 = 0
iteration 2 : total = total + 1 = 0 + 1 = 1
iteration 3 : total = total + 2 = 1 + 2 = 3
iteration 4 : total = total + 3 = 3 + 3 = 6