Я работаю над упражнением по кодированию и преуменьшаю эту функцию. Функция, которую я пытаюсь создать, - это взять строку, записать количество повторений для каждого слова. Проблема в том, что когда я пытаюсь добавить объект, используя значение myObject.key =, при передаче счетчика var счетчик, который помещается в myObject, по-прежнему равен 0, , хотя обновляется.При добавлении в объект с использованием переменной count, var 'count' по-прежнему 0
function countWords(string) {
var myArray = string.split(" ");
var myObject = {};
for (var i=0; i<myArray.length; i++) {
var currentWord = myArray[i];
//var count2 = 0;
var count = 0;
for (var j=i+1; j<myArray.length; j++) {
var nextWord = myArray[j];
console.log(currentWord + ' and a ' + nextWord)
console.log('countBefore: '+count)
if (currentWord===nextWord) {
count += 1;
}
console.log('countAfter: '+count)
}//for loop2
console.log('countOutside: '+count)
myObject[currentWord] = count;
}// for loop
return myObject;
}
//console.log(countWords('blah blah the the the he she be'));
console.log(countWords('blah blah the the the she'));
Некоторые заявления для печати, вероятно, не нужны, но это может быть полезно, чтобы понять, так что я оставил его.
Спасибо за быстрый и лаконичный ответ, вы могли бы расширить, если заявление, что вы добавили. Если не 0 или если счетчик больше, чем предыдущий записанный счетчик, добавьте в myObject? – jaysonder
'! MyObject [currentWord]' обрабатывается, если мы еще не определили этот индекс. Если вы этого не сделали, сохраните значение. Если у вас есть, только сохраните его, если он выше. Возможно, будет работать нормально только с '! MyObject [currentWord]'. – StephenTG