Встречается на собеседованиях • сегодня

Как сделать код асинхронным кроме использования callback и Promise

В JavaScript есть несколько способов сделать код асинхронным:

  1. Async/Await - синтаксический сахар над Promise:
javascript
async function fetchData() {
  const response = await fetch('url');
  const data = await response.json();
  return data;
}
  1. Генераторы с yield:
javascript
function* asyncGen() {
  const result = yield someAsyncOperation();
  console.log(result);
}

const gen = asyncGen();
gen.next().value.then(data => gen.next(data));

text

3. **Event Emitters** (Node.js):
```javascript
const EventEmitter = require('events');
const emitter = new EventEmitter();

emitter.on('data', (data) => {
  console.log(data);
});

someAsyncOperation().then(data => emitter.emit('data', data));
  1. Web Workers для параллельного выполнения:
javascript
const worker = new Worker('worker.js');
worker.postMessage('start');
worker.onmessage = (e) => console.log(e.data);
  1. Observables (RxJS):
javascript
import { from } from 'rxjs';

from(fetch('url')).subscribe(response => {
  console.log(response);
});
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы