2014-01-09 3 views
-2

Я работаю над проблемой из CoderByte. Мне интересен мой код. Первая функция returns 6 и вторая функция returns 4, которая является правильным счетчиком. Я пытаюсь понять, почему это происходит. Как и при консолидации журнала newArr, он показывает только 4 элемента.Возьмите строку и верните количество слов в строке - JavaScript

Проблема с CoderByte: - Используя язык JavaScript, используйте функцию WordCount (str) для передачи строкового параметра str и возвращайте количество слов , содержащее строку (т. Е. «Никогда не ешьте измельченную пшеницу», вернется 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; 
}; 
+2

ваш 'total' = 1 + 0 + 2 + 3 = 6 –

ответ

7

Поскольку вы добавляете я вместо одного.

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 
+0

И итерация 4? – putvande

+1

Я устал печатать – epascarello

+0

Хороший звонок, спасибо! – jstone

Смежные вопросы