Как l oop массив с JavaScript - PullRequest
       33

Как l oop массив с JavaScript

1 голос
/ 12 февраля 2020

Так что я довольно новичок в JavaScript. У меня есть проблема, которую я должен решить. Я зашел так далеко, но не знаю, как дальше. Мне нужно взять приведенный ниже код и выполнить тот же результат без использования for-l oop.

 for(var i = 0; i < 7; i++)
    {
    console.log([...Array(i)].map(x => '*').join(""));
    }

Ответы [ 5 ]

1 голос
/ 12 февраля 2020

Я предлагаю использовать те же логики c, которые вы уже используете. .map функция аргумента имеет параметр index.

console.log([...Array(7)].map((x,i) => [...Array(i)].map(x => "*").join("")).join("\r\n"))

В ситуациях, когда вам не разрешено использовать циклы, у вас есть опция рекурсивной функции и Array.forEach()

1 голос
/ 12 февраля 2020

[...Array(7)] // this will create a low performance array with seven entries
.map ( // both map and forEach provide three arguments: (value, index, array)
       // in this case we care about the index to know where in the loop we are.
  (x, i) => "*".repeat(i) // look up String.prototype.repeat.
)
.forEach(x => console.log(x)) // then for each iteration, call console.log
0 голосов
/ 12 февраля 2020

Рекурсивно вызывать его для выполнения того же,

function drawStar(times) {
    function drawRecursive(i) {
        if (i === times) return;
        console.log(Array(i).fill("*").join(""));
        drawRecursive(++i);
    }
    drawRecursive(1);
}

drawStar(7);
0 голосов
/ 12 февраля 2020

Как сказала Джессика, вы можете использовать Array.forEach () l oop или, если вы хотите иметь собственную функцию для решения этой конкретной c проблемы, вы можете использовать это:

var arr = ["0", "1", "0", "1"];

function loop(array) {
  array.forEach(el => {
    console.log(el);
  });
}

loop(arr);
0 голосов
/ 12 февраля 2020

Рекомендую просмотреть документацию по массивам. Чтобы выполнить sh, не используя a для l oop, вы можете использовать метод Array.forEach ().

См. Документацию MDN здесь: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...