Сообщения

Показаны сообщения с ярлыком "loftschool"

Асинхронность. Часть 2

Изображение
Чтобы разобраться с этой темой потратила неделю. К счастью, в современном JS всё реализуется намного проще. Асинхронный запрос с fetch выглядит так: function getData() {     const url = link;   fetch(url)     .then(res => res.json())     .then(data => {         // code     }); } Более современным и удобным считается использование async/await async function getData() {     const url = link;   const res = await fetch(url);   const data = await res.json(); }

Конструкторы, прототипы

Изображение
Открытый бесплатный вебинар об ООП в JavaScript Первая часть: https://studyjavascript.blogspot.com/2019/02/javascript.html Конструкторы Если вызвать функцию с ключевым словом new . то функция начнёт возвращать "пустой" объект. var F = function(){   } new F()     //   Object { } Такая функция называется конструктором , а объект, который она возвращает, экземпляром . this внутри этой функции будет указывать на экземпляр. Соответственно, используя this можно внутри этой функции выполнять манипуляции с объектом, например, добавлять ему свойства. var F = function(name){   this.name = name; } var name1 = new F("Anton");     // Object { name="Anton"} var name2 = new F("Boris");      //   Object { name="Boris"} Каждый раз при вызове функции с ключевым словом new возвращается новый объект со своим набором полей. Внутри экземпляра, как и любого другого объекта, всегда есть свойство cons...

Тема 10. Асинхронность

Изображение
Ссылка на вебинар https://youtu.be/Ih6Q7ka2eSQ Таймеры В первую очередь асинхронность рассмотрим на примере таймеров. Таймеры широко используются в анимации, при создании механизма переподключения к серверу, вообще где угодно, где нам нужно отложить выполнение кода на определённое время. Для создания таймера мы используем встроенную в среду разработки функцию setTimeout . Первым аргументом мы передаём функцию, которую нужно выполнить, вторым - время, на которое нужно отложить выполнение данной функции. setTimeout(() => {   console.log("timer"); }, 3000); Так тоже можно function fn() {   console.log("timer"); } setTimeout(fn, 3000);  Посмотрим на последовательность выполнения функций. Для этого последовательно вызовем четыре функции. console.log("1"); setTimeout(() => {   console.log("2"); }, 3000); setTimeout(() => {   console.log("3"); }, 1000); console.log("4"); В какой посл...