- Я хочу, чтобы цикл через массив.
- Любой индекс, длина которого больше 3, я хочу сокращать.
- Я хочу поместить новые сокращенные месяцы в новый массив.
- Я хочу проверить, что он работает, написав результаты на консоли.
Я могу получить код для запуска, однако результаты не получаются так, как я надеюсь. По моему пониманию, цикл работает true, запустив оператор if, который работает true, запустив блок кода. После этого цикл должен повторяться и продолжаться до тех пор, пока i < months.length, но это не так.Результаты из цикла не работают правильно
var months = ["January", "Febuary", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var monthsAbbrev = [];
for (var i = 0; i < months.length; i++) {
if (months[i].length > 3) {
monthsAbbrev = months[i].slice(0, 3);
}
}
console.log(monthsAbbrev);
[ 'Array.prototype.push()'] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/ push) – Andreas
На уровне OP я бы лучше дал ему эту ссылку: http://www.w3schools.com/jsref/jsref_push.asp – gromit190
Причина, по которой она не работает так, как вы ее ожидаете, заключается в том, что ваше задание является символом 'char []', а не 'string []' и каждый раз заменяет этот массив. Вы можете проверить это с помощью 'console.log (monthsAbbrev [0]);'. Уже есть ряд ответов, говорящих вам, что делать, но не почему это не работает. – adamdc78