Нерассказанная история неисчислимых возможностей.

До того, как я начал программировать (да, около месяца назад), я думал о веб-сайтах и ​​приложениях как о чем-то полезном, но я не мог понять их сложности, для меня они были набором изображений и слов, которые можно было щелкнуть. , трогайте, двигайтесь, и произойдут некоторые забавные и милые вещи.

Я предполагаю, что, будучи пользователем, вы никогда не задумываетесь о том, что происходит за экранами наших устройств. Мой первый опыт программирования оставил у меня отличный привкус во рту. Я сказал «кодирование», но на самом деле я следовал инструкциям из школы, чтобы загрузить все программы, которые мне нужно было кодировать, это был мой первый раз, когда я использовал линейный код в терминале. Для тех, кто, как и я, в то время не знал, что такое терминал, он выглядит так:

Инструкции были очень четкими, и я сделал все так хорошо и быстро, что я похлопал себя по спине, я даже позволил себе чересчур довольный звонок подруге, чтобы сказать ей, как хорошо я справляюсь. Эта мысль вызывает у меня сейчас улыбку.

О, как я ошибался!

Все было розовым, цветами и бабочками в течение примерно недели, пока я счастливо изучал самую основную теорию, поздравляя себя со своим быстрым пониманием: «Все имеет смысл!» — твердил я себе.

Некоторые из первых заданий я даже выполнила самостоятельно, рассказала семье и друзьям, как проходит это удивительное и легкое путешествие… Потом в моем кодировочном саду начали расти шипы: Функции! Объем! Отладка! Условия!

Но только когда я нашел LOOPS, я познал страх. К тому времени, как я остался на неделю до занятий (нет, я не стыжусь это говорить), я был в полном бешенстве.

Вся теория, которая имела такой смысл в моей голове, оказалась бесполезной, второй раз в жизни я почувствовал разочарование от невозможности выразить себя. Мне в голову постоянно приходила фраза, которую ты всегда повторяешь всем, когда изучаешь новый язык: «Я понимаю, что они говорят, но я не могу говорить на этом».

До написания кода цикл был повторяющейся, скучной, бесконечной вещью… но эта точка зрения изменилась, когда я понял, что делает цикл в JavaScript, и тогда цикл стал просто бесконечной вещью с бесконечными возможностями.

Теперь, когда я начинаю видеть свет в конце тоннеля, я наконец даю волю своему воображению.

Но давайте немного научимся. Что такое цикл в JavaScript?

Цикл — это фрагмент кода, который позволяет запускать другой фрагмент кода определенное количество раз (или даже бесконечное количество раз!).

Вы можете задаться вопросом: «Зачем мне это нужно? - тогда позвольте мне сказать вам: если ваша мантра «работайте с умом, а не усердно», тогда мы похожи. И зачем вам писать один и тот же код снова и снова, тратить столько времени и энергии, когда ваш компьютер может сделать это за вас? Точно!

Есть много интересных вещей, которые мы можем делать с циклами, поэтому давайте рассмотрим различные типы циклов:

  • Цикл for. Часто используется, когда мы хотим выполнить определенное количество итераций. Он состоит из трех частей: инициализации, условия и конечного выражения. Инициализация указывает начальную точку цикла, условие проверяется в начале каждой итерации, а окончательное выражение выполняется в конце каждой итерации.
for (let i = 0; i < 10; i++) {
  console.log(i);
}

Этот цикл начнется с 0 и будет продолжаться до тех пор, пока i меньше 10. В конце каждой итерации i будет увеличиваться на 1. В результате этот цикл выведет на консоль числа от 0 до 9. . Вы можете создавать вложенные циклы с помощью цикла for.

  • Цикл while используется, когда мы хотим выполнить неизвестное количество итераций. Он состоит из одного условия, и цикл будет выполняться до тех пор, пока это условие истинно.
let i = 0;
while (i < 10) {
  console.log(i);
  i++;
}

Этот цикл while начнется с 0 и будет продолжаться до тех пор, пока i меньше 10. В конце каждой итерации i будет увеличиваться на 1. В результате этот цикл также будет печатать числа от 0 до 9 до консоль. Мы также можем использовать цикл do...while, который очень похож, но условие проверяется в конце каждой итерации, а не в начале. Это означает, что код внутри цикла всегда будет выполняться хотя бы один раз, даже если условие ложно.

let i = 0;
do {
  console.log(i);
  i++;
} while (i < 10);

Этот цикл do...while также выведет на консоль числа от 0 до 9, но он всегда будет выполнять код внутри цикла хотя бы один раз, независимо от значения i.

  • Цикл for...in, который используется для перебора свойств объекта. Этот цикл состоит из одной переменной, которая используется для хранения имен свойств объекта.
const obj = {a: 1, b: 2, c: 3};
for (const prop in obj) {
  console.log(prop, obj[prop]);
}

Этот цикл будет перебирать свойства объекта obj и выводить имена и значения свойств на консоль.

  • Цикл for...of — это новый тип цикла, созданный в 2015 году. Он используется для перебора значений итерируемого объекта, например массива или строки.
const arr = [1, 2, 3, 4, 5];
for (const val of arr) {
  console.log(val);
}

Одним из преимуществ этого цикла является то, что его легче читать и понимать, поскольку он явно объявляет переменную, содержащую текущее значение итерации. Он не требует использования индекса для доступа к значениям объекта. Он работает с любым итерируемым объектом, а не только с массивами. Это означает, что мы можем использовать его для перебора строк, карт и наборов, а также любого другого объекта.

  • Метод forEach() — это метод объекта Array в JavaScript, который позволяет нам выполнять функцию обратного вызова для каждого элемента массива. Он похож на цикл for...of, но не возвращает значение и не может использоваться с оператором break или continue.
const arr = [1, 2, 3, 4, 5];
arr.forEach(val => console.log(val));

Этот метод forEach() выведет на консоль индекс и значение каждого элемента.

В заключение заключение, циклы имеют безграничные возможности, ваши самые смелые мечты и идеи могут быть реализованы с помощью циклов (конечно, если это веб-сайт или приложение).

Вы хотите покупать модные вещи в Интернете, продавать их, играть в игры, общаться с друзьями, создать фан-сайт для своей собачки, составить карту худших ресторанов в городе или даже найти свою вторую половинку?

loopYourImaginationAway.forEach(ofYourDreams => (console.log('Yay!'))