Underscore.js
Underscore.js
| |
---|---|
![]() | |
Basisdaten
| |
Entwickler | Jeremy Ashkenas, DocumentCloud sowie Investigative Reporters & Editors |
Erscheinungsjahr | 2009 |
Aktuelle Version | 1.13.7[1] (24. Juli 2024) |
Betriebssystem | plattformunabhängig |
Programmiersprache | JavaScript |
Kategorie | JavaScript-Bibliothek |
Lizenz | MIT-Lizenz (Freie Software) |
deutschsprachig | nein |
underscorejs.org |
Underscore.js oder kurz Underscore (für engl. Unterstrich) ist eine freie JavaScript-Bibliothek mit Hilfsfunktionen für alltägliche JavaScript-Aufgaben. Es wurde 2009 von Jeremy Ashkenas (Backbone.js, CoffeeScript) als Werkzeugsammlung für Container-Operationen auf Arrays und Objekten sowie von JavaScript-Funktionen geschaffen. Der Name der Bibliothek rührt vom für sie reservierten globalen Objekt _
(Underscore ist englisch für das Zeichen Unterstrich) analog zum Objekt $
in jQuery her.
Underscore folgt dem Paradigma der funktionalen Programmierung und baut komplexe Operationen durch Komposition einfacher Funktionen auf. Dafür verzichtet es auf die ansonsten in JavaScript oft genutzte Erweiterung der Objekt-Prototypen zugunsten einer durchgehenden Hilfsklassen-Semantik.
Browser-Kompatibilität
Zur Prüfung der Browser-Kompatibilität steht eine eigene Test-Suite bereit[2], die eine Kompatibilität zu Internet Explorer ab Version 6.0 sowie Chrome 28/34, Opera 12/20 und Firefox 22/28 ergab (getestet mit Version 1.5.1 resp. 1.6.0 auf Windows 7 64 Bit respektive mit IETester[3]).
Zur Sicherung der bestmöglichen Performance werden Underscore-intern aktuelle Sprachelemente eingesetzt, sofern diese auf der jeweiligen Plattform vorhanden sind. So delegierte beispielsweise die Funktion _.each() bis Release 1.6.0 an die native Umsetzung von Array.prototype.forEach(), sofern diese existiert, und stellte ansonsten eine eigene Implementierung bereit – seit Release 1.7.0 werden die Array-Methoden durchgängig neu implementiert.
Alternativen
Seit 2009 besteht das Projekt Lodash und stellt eine Übermenge der von Underscore.js angebotenen Funktionalität bereit.[4][5]
Trivia
Die Dokumentation beschreibt Underscore so:
“Underscore is a utility-belt library… the tie to go along with jQuery’s tux, and Backbone.js’s suspenders.”
„Underscore ist eine Werkzeuggürtel-Bibliothek,… der zum jQuery-Smoking passende Binder (Schlips) und Tragband (Hosenträger) für Backbone.js.“
Einzelnachweise
- ↑ Release 1.13.7. 24. Juli 2024 (abgerufen am 28. Juli 2024).
- ↑ Underscore Test Suite. Abgerufen am 6. August 2013 (englisch).
- ↑ Core Services: Browser Compatibility Check for Internet Explorer Versions from 5.5 to 10. Version 0.5.2. 2. April 2013, abgerufen am 6. August 2013 (englisch).
- ↑ Lodash auf GitHub
- ↑ Differences between Lodash and Underscore.js. In: Stack Overflow. 16. Dezember 2012, abgerufen am 26. Januar 2021.