5 способов сделать API-запрос с помощью JavaScript
🍩 XMLHttpRequest (XHR) - это API, доступный веб-браузерам, который предоставляет методы для передачи данных между клиентом и сервером.
🍩 Fetch - это API на JavaScript, который позволяет выполнять сетевые запросы, похожие на XMLHttpRequest (XHR).
Он гораздо проще в использовании, чем XHR, и обладает более широким набором функций.
🍩 Использование
Функция fetch не поддерживает опцию таймаута из коробки.
🍩 Axios - это основанный на обещаниях HTTP-клиент для браузера и Node.js.
Axios можно использовать для получения данных с сервера, отправки данных на сервер, обновления данных на сервере и многого другого.
Он выполняет асинхронные HTTP-запросы.
🍩 jQuery Get
Если вы все еще используете jQuery, будь то для старой системы или нового проекта, на последнем фото пример GET-запроса, сделанного в jQuery.
👉 Гайды по JavaScript | дать буст
Он гораздо проще в использовании, чем XHR, и обладает более широким набором функций.
fetch()
с AbortController (для таймаута)Функция fetch не поддерживает опцию таймаута из коробки.
Axios можно использовать для получения данных с сервера, отправки данных на сервер, обновления данных на сервере и многого другого.
Он выполняет асинхронные HTTP-запросы.
Если вы все еще используете jQuery, будь то для старой системы или нового проекта, на последнем фото пример GET-запроса, сделанного в jQuery.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3
Прототипы JavaScript против классов.
⏩ Объявление объекта:
В прототипном подходе создается функция-конструктор (function Deployment(app, region) {}).
В классовом подходе используется ключевое слово class (class Deployment { constructor(app, region) {}}).
⏩ Определение методов:
В прототипном подходе метод добавляется вручную через Deployment.prototype.deploy = function() {}.
В классовом подходе метод объявляется внутри класса (deploy() {}).
⏩ Читаемость и удобство:
Классовый подход более современный, удобочитаемый и интуитивно понятный.
Прототипный подход более сложен в восприятии и требует явного манипулирования прототипами.
⏩ Использование в старых версиях JavaScript:
Прототипы использовались до появления классов в ES6.
Классы являются синтаксическим сахаром над прототипами, но работают более интуитивно.
Оба подхода приводят к одному результату, но классы чаще используются в современном коде.
👉 Гайды по JavaScript | дать буст
В прототипном подходе создается функция-конструктор (function Deployment(app, region) {}).
В классовом подходе используется ключевое слово class (class Deployment { constructor(app, region) {}}).
В прототипном подходе метод добавляется вручную через Deployment.prototype.deploy = function() {}.
В классовом подходе метод объявляется внутри класса (deploy() {}).
Классовый подход более современный, удобочитаемый и интуитивно понятный.
Прототипный подход более сложен в восприятии и требует явного манипулирования прототипами.
Прототипы использовались до появления классов в ES6.
Классы являются синтаксическим сахаром над прототипами, но работают более интуитивно.
Оба подхода приводят к одному результату, но классы чаще используются в современном коде.
Please open Telegram to view this post
VIEW IN TELEGRAM
Микросервисы делают приложения более масштабируемыми и поддерживаемыми, разбивая их на более мелкие части.
На этом практическом курсе вы научитесь создавать собственные микросервисы с помощью Nest.js.😆
Вы создадите приложение доставки с помощью MongoDB, Docker и межсервисного взаимодействия, а также узнаете о проектировании схем, проверке данных и многом другом.
⏩ https://freecodecamp.org/news/create-microservices-with-nestjs/
👉 Гайды по JavaScript | дать буст
На этом практическом курсе вы научитесь создавать собственные микросервисы с помощью Nest.js.
Вы создадите приложение доставки с помощью MongoDB, Docker и межсервисного взаимодействия, а также узнаете о проектировании схем, проверке данных и многом другом.
Please open Telegram to view this post
VIEW IN TELEGRAM
Методы объектов JavaScript - часть 1
Object.keys() – получение всех ключей объекта.
Object.values() – получение всех значений объекта.
Object.entries() – преобразование объекта в массив пар [ключ, значение].
Object.assign() – объединение объектов.
Object.freeze() – предотвращение изменения объекта.
👉 Гайды по JavaScript | дать буст
Object.keys() – получение всех ключей объекта.
Object.values() – получение всех значений объекта.
Object.entries() – преобразование объекта в массив пар [ключ, значение].
Object.assign() – объединение объектов.
Object.freeze() – предотвращение изменения объекта.
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Знаете ли вы, что в VSCode можно открыть браузер?
Никаких расширений, никаких установок - он интегрирован!
Ваш код и ваши изменения в одном окне
👉 Гайды по JavaScript | дать буст
Никаких расширений, никаких установок - он интегрирован!
Ваш код и ваши изменения в одном окне
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥3👍1
The Odin Project – Full Stack JavaScript: JavaScript Course
— это часть большого фуллстек-пути, выстроенного вокруг JavaScriptПроект открытый, бесплатный, и это реально полноценный курс, а не пара глупых туториалов на ютубе.
Если собрался вкатиться во фронт или фуллстек — тык
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по Vue для тебя! 💡
Шаблоны захламлены кучей
В этом примере переменная
👉 Гайды по JavaScript | дать буст
Шаблоны захламлены кучей
v-if
и v-else
, чтобы выбрать, какой компонент отобразить? Наведи порядок с помощью динамических компонентов В этом примере переменная
activeTab
теперь хранит не строку, а сам компонент, так что можно просто написать:<Component :is="activeTab" />
Please open Telegram to view this post
VIEW IN TELEGRAM
linkedSignal()
в Angular — недостающее звено в реактивности, основанной на сигналах!1. Изменяемый, как обычный
signal
2. Реактивный, как
computed
3. Идеально подходит для таких сценариев, как сброс форм и управление состоянием
Больше никаких неудобных обходов через
effect()
!Посмотри, как это работает:
const quantity = linkedSignal({
source: () => ({ courseCode: this.selectedCourse() }),
compute: ({ courseCode }, previous) => {
const course = this.courses.find(c => c.code === courseCode);
return course ? course.defaultQuantity : previous ?? 1;
}
});
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Это было написано на JavaScript. Потрясающе!
Demo: http://my-room-in-3d.vercel.app
Code: http://github.com/brunosimon/my-room-in-3d
Наслаждайтесь!
👉 Гайды по JavaScript | дать буст
Demo: http://my-room-in-3d.vercel.app
Code: http://github.com/brunosimon/my-room-in-3d
Наслаждайтесь!
Please open Telegram to view this post
VIEW IN TELEGRAM