Собираемся в отпуск

Summary
var luggage = ['пакет', 'мяч', 'тапки', 'когтеточка', 'коробка', 'миска', 'мята'];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];
for(var i = startIndex; i < startIndex + quantity; i++) {
  chosenLuggage.push(luggage[i]);  
  }
7 лайков
for (var i = startIndex; i < luggage.length; i++) {
  if (chosenLuggage.length < quantity) {
    chosenLuggage.push(luggage[i]);
  }
}
5 лайков
var luggage = ['пакет', 'мяч', 'тапки', 'когтеточка', 'коробка', 'миска', 'мята'];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = luggage.splice(startIndex, quantity);
6 лайков

Для добавления элементов в новый массив можешь использовать команду array.push(). А кто то вкурил, зачем в задаче этот текст, если я решил так же как первый оратор 17 июля

luggage.slice(startIndex).map(function(item) {  
    if (chosenLuggage.length < quantity) chosenLuggage.push(item);
});

Зачем изменяете еще и luggage?

Почитайте для чего нужен map https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Array/map
Он здесь вообще не к месту

Да, Вы правы, исправил:

var luggage = ['пакет', 'мяч', 'тапки', 'когтеточка', 'коробка', 'миска', 'мята'];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [...luggage].splice(startIndex, quantity);

Либо можно так решить задачу:

var chosenLuggage = luggage.slice(startIndex);
chosenLuggage.length = quantity;
1 лайк

раз используете slice, то можно так luggage.slice(startIndex, startIndex + quantity) т.к. он еще и конечный индекс принимает

3 лайка

придумал без использования array.push(). только пройденная информация. вроде работет, проверку прошло. что скажете?

var luggage = ['пакет', 'мяч', 'тапки', 'когтеточка', 'коробка', 'миска', 'мята'];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];

for(var i =startIndex; i<startIndex+quantity; i++){
  chosenLuggage[i-startIndex]=luggage[i]
  }
6 лайков

только пройденная информация
array.push - есть в теории, значит можно считать, что пройдена :slight_smile:

P.s. у меня получилось так же, как и у первого оратора.

Собираемся в отпуск
console.log('Программа "Собираемся в отпуск" by Nerealist');

var luggage = ['пакет', 'мяч', 'тапки', 'когтеточка', 'коробка', 'миска', 'мята'];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];
console.log('Из всех ваших вещей... : ' + luggage);

for (var i = startIndex; i < startIndex + quantity; i++) {
  chosenLuggage.push(luggage[i]);
}

console.log('...Вы сможете взять только эти, Сэр : ' + chosenLuggage);
var luggage = ['пакет', 'мяч', 'тапки', 'когтеточка', 'коробка', 'миска', 'мята'];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];
var j = 0;
for (var i = startIndex; j != quantity; i++) {  
  j++;
  chosenLuggage.push(luggage[i]);
  }
1 лайк
var luggage = ['пакет', 'мяч', 'тапки', 'когтеточка', 'коробка', 'миска', 'мята'];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];

for (var i = startIndex, j = 0; j < quantity; i++,j++) {
  chosenLuggage[j] = luggage[i];
}
var luggage = ['пакет', 'мяч', 'тапки', 'когтеточка', 'коробка', 'миска', 'мята'];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];

for (var i = startIndex; i <= startIndex + quantity - 1; i++) {
  chosenLuggage.push(luggage[i]);
}

var luggage = [‘пакет’, ‘мяч’, ‘тапки’, ‘когтеточка’, ‘коробка’, ‘миска’, ‘мята’];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];
for (var i=1; i<= quantity; i++) {
chosenLuggage.push (luggage[startIndex]);
startIndex++
}

2 лайка

for( var i=0; i<quantity; i++){
chosenLuggage.push(luggage[startIndex++])
}

Долго не мог допереть, что не так делаю. 1 вариант решает правльно, 2 нет. Меняю условия окончания цикла и получается, что 2 варианта правильно, 1 нет. Пошел кофейку налил и осенило, что нужно сложить)))
var luggage = [‘пакет’, ‘мяч’, ‘тапки’, ‘когтеточка’, ‘коробка’, ‘миска’, ‘мята’];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];

for (var i=startIndex; i<startIndex+quantity; i++) {
chosenLuggage.push(luggage[i]);
}
console.log(chosenLuggage)

1 лайк

Молодец чувак! У меня решение такое же, ну почти. Сделал за минут 5, но мы ведь учимся. Просто смешно иногда читать ответы других, которые почему-то используют методы которые нам еще не излагались.
Вот мое решение:
var luggage = [‘пакет’, ‘мяч’, ‘тапки’, ‘когтеточка’, ‘коробка’, ‘миска’, ‘мята’];
var startIndex = 2;
var quantity = 3;
var chosenLuggage = [];

for(var i=startIndex; i<=(startIndex+quantity)-1; i++){
chosenLuggage.push(luggage[i])+’,’;
}
console.log(chosenLuggage);

Учимся))) правда иногда такой тупик бывает, особенно с циклами у меня. Пока мне один добрый человек не объяснил по-детски как все это работает)

1 лайк

var luggage = [‘пакет’, ‘мяч’, ‘тапки’, ‘когтеточка’, ‘коробка’, ‘миска’, ‘мята’];
var startIndex = 1;
var quantity = 4;
var chosenLuggage = [];

for(i = startIndex; i <= luggage.length; i++){
if (i <= (startIndex - 1) + quantity){
chosenLuggage.push(luggage[i])
}
}