#javascript #arrays #string #foreach
#javascript #массивы #строка #foreach
Вопрос:
Например: myArray = [«Дэйв», «Том», «Пит»];
Я хотел бы напечатать каждый элемент в myArray 3 раза в следующем формате:
Дейв
Дейв
Дейв
Том
Том
Том
Пит
Пит
Пит
Циклы forEach (по крайней мере, сами по себе), похоже, не справляются с тем, что я пытаюсь сделать. Я переключаюсь между различными методами array и string, но я чувствую, что мне не хватает какой-то комбинации. Любая помощь будет оценена. Спасибо.
Комментарии:
1. используйте вложенный цикл for, пожалуйста
2. Это не сервис для написания кода или обучения. Ожидается, что вы покажете свои собственные попытки решить вашу проблему самостоятельно … или любое исследование, которое вы провели. Затем люди помогут вам исправить любые конкретные проблемы в вашем коде
3. Подумайте о функции или двух, которые вы могли бы написать для этого. (Затем попробуйте и опубликуйте свою попытку)
Ответ №1:
Все, что вам действительно нужно сделать здесь, это иметь два вложенных цикла for . Первый перебирает ваш массив строк; второй цикл содержит любой механизм, который вы хотите использовать для «печати» ваших строк. Здесь у меня есть две переменные, одна из которых — ваш массив, а вторая — простой x, чтобы выбрать, сколько раз вы хотите напечатать свою строку.
Кроме того, как сказано в комментарии выше, это не служба написания кода. В следующий раз вам действительно нужно привести пример того, что вы сделали, что не сработало, и задать вопрос на основе этого. Цикл forEach на самом деле должен работать просто отлично.
let myArray = ["Dave", "Tom", "Pete"];
let x = 3;
for (let i = 0; i < myArray.length; i ) {
for (let j = 0; j < x.length; j ) {
// whatever printing mechanism you would like goes here. let's make some html
let element = document.createElement('p');
element.textContent = myArray[i];
document.body.appendChild(element);
}
}
Ответ №2:
Если вы хотите сделать что-то «x раз» для каждого элемента, это именно то, что вы должны сделать: «для каждого элемента»: «do … x раз «
["Dave", "Tom", "Pete"].forEach((e) => {
for (let i = 0; i < 3; i ) console.log(e);
});