Zum Inhalt springen
_CORE
KI & Agentensysteme Unternehmensinformationssysteme Cloud & Platform Engineering Datenplattform & Integration Sicherheit & Compliance QA, Testing & Observability IoT, Automatisierung & Robotik Mobile & Digitale Produkte Banken & Finanzen Versicherungen Öffentliche Verwaltung Verteidigung & Sicherheit Gesundheitswesen Energie & Versorgung Telko & Medien Industrie & Fertigung Logistik & E-Commerce Retail & Treueprogramme
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

RxJS: Reaktive Programmierung in JavaScript

17. 10. 2016 Aktualisiert: 24. 03. 2026 2 Min. Lesezeit CORE SYSTEMSdevelopment
Dieser Artikel wurde veröffentlicht im Jahr 2016. Einige Informationen können veraltet sein.
RxJS: Reaktive Programmierung in JavaScript

RxJS (Reactive Extensions for JavaScript) bringt Observables, Operatoren und ein reaktives Paradigma. Eine Schlüsselabhängigkeit von Angular 2 und ein mächtiges Werkzeug für asynchronen Code.

Warum reaktive Programmierung

Moderne Webanwendungen sind inhärent asynchron — Benutzerinteraktionen, HTTP-Requests, WebSocket-Nachrichten, Timer. Callback Hell und Promise-Ketten werden unwartbar.

Reaktive Programmierung modelliert asynchrone Daten als Streams — Sequenzen von Werten über die Zeit. RxJS bietet Werkzeuge zum Komponieren, Filtern und Transformieren dieser Streams.

Observables und Operatoren

Ein Observable ist eine Lazy-Push-Collection — es produziert Werte über die Zeit:

import { Observable } from 'rxjs';
import { map, filter, debounceTime, switchMap } from 'rxjs/operators';

// Typeahead search
const search$ = Observable.fromEvent(searchInput, 'input')
  .pipe(
    map(e => e.target.value),
    debounceTime(300),
    filter(term => term.length > 2),
    switchMap(term => fetch('/api/search?q=' + term)
      .then(res => res.json()))
  );

search$.subscribe(results => {
  renderResults(results);
});

debounceTime wartet 300ms nach der letzten Eingabe. switchMap bricht den vorherigen Request ab, wenn ein neuer kommt. Eine elegante Lösung für ein komplexes Problem.

RxJS in Angular 2

Angular 2 integriert RxJS tief:

  • HttpClient — gibt Observable statt Promise zurück
  • Router — Route-Parameter als Observable
  • Forms — valueChanges als Observable
  • EventEmitter — intern Observable

Das Angular-Team wählte RxJS wegen seiner Kompositionsfähigkeit — Kombination von HTTP-Requests, Benutzereingaben und Route-Änderungen in einer deklarativen Pipeline.

Wann RxJS außerhalb von Angular einsetzen

RxJS ist nicht nur für Angular — es ergibt überall Sinn, wo es komplexe asynchrone Logik gibt:

  • Echtzeit-Dashboards — Kombination von WebSocket-Streams
  • Autocomplete/Typeahead — Debouncing, Abbruch
  • Drag and Drop — Komposition von Maus-Events
  • Polling mit Retry — Intervall + HTTP + Fehlerbehandlung

Für einfache Fetch-Requests ist RxJS Overkill — Promise genügt. RxJS glänzt in komplexen asynchronen Szenarien.

Fazit: Ein mächtiges Werkzeug mit Lernkurve

RxJS ist das fortschrittlichste Werkzeug für asynchrone Programmierung in JavaScript. Die Lernkurve ist steil — über 200 Operatoren und ein neues mentales Modell. Aber für komplexe Echtzeit-Anwendungen ist der Return on Investment enorm. Beginnen Sie mit einfachen Szenarien und erweitern Sie schrittweise.

rxjsreaktivní programováníobservablesangularjavascriptasynchronní
Teilen:

CORE SYSTEMS

Wir bauen Kernsysteme und KI-Agenten, die den Betrieb am Laufen halten. 15 Jahre Erfahrung mit Enterprise-IT.

Brauchen Sie Hilfe bei der Implementierung?

Unsere Experten helfen Ihnen bei Design, Implementierung und Betrieb. Von der Architektur bis zur Produktion.

Kontaktieren Sie uns
Brauchen Sie Hilfe bei der Implementierung? Termin vereinbaren