Dopiero zaczynam uczyć się JavaScript i natknąłem się na Underscore.js i jQuery . Underscore wygląda naprawdę fajnie, ale zastanawiam się, czy jQuery nie zapewnia już funkcji podobnych do Underscore. Czy więc warto używać obu?
javascript
jquery
underscore.js
helpermethod
źródło
źródło
Odpowiedzi:
Zaczerpnięte z witryny podkreślenia :
Podkreślenie jest bardziej odpowiednie do manipulacji danymi i wprowadza wiele metod Rubiego do JavaScript. Jest trochę crossoverów, ale nie na tyle, aby się wzajemnie wykluczały.
źródło
źródło
Podkreślenie zapewnia łącznie 60 funkcji do przetwarzania danych / kodu. Uzgodniono, że wiele funkcji jest obecnych w innych bibliotekach, takich jak jQuery, Prototype czy script.aculo.us. Na przykład funkcje takie jak each, map, find, filter lub toArray są obecne w jQuery. Te są również w Underscore. Ma to na celu uniezależnienie biblioteki od jQuery.
Kiedy używać podkreślenia?:
Obecnie jest szeroko stosowany z Backbone.js do korzystania z architektury MVC do tworzenia jednostronicowej aplikacji internetowej Javascript. Najważniejszą cechą underscore.js jest możliwość tworzenia szablonów (czego jQuery nie potrafi). Ta biblioteka ma wiele innych przydatnych funkcji, które są niezależne od innych bibliotek Javascript.
Poniżej znajduje się lista funkcji udostępnianych przez Underscore:
Kolekcje: każdy, mapuj, redukuj, redukujRight, znajdź, filtruj, odrzuć, wszystkie, dowolne, dołącz, wywołaj, pluck, max, min, sortBy, groupBy, sortIndex, shuffle, toArray, size
Tablica: pierwsza, pierwsza, ostatnia, reszta, kompaktowa, spłaszczona, bez, suma, przecięcie, różnica, uniq, zip, indexOf, lastIndexOf, range
Funkcja: bind, bindAll, memoize, delay, defer, throttle, debounce, Once, after, wrap, compose
Obiekt: klucze, wartości, funkcje, rozszerzanie, wartości domyślne, klonowanie, stukanie, isEqual, isEmpty, isElement, isArray, isArguments, isFunction, isString, isNumber, isBoolean, isDate, isRegExp, isNaN, isNull, isUndefined
Utitity: noConflict, identity, times, mixin, uniqueId, escape, template
źródło
Jeśli obawiasz się nakładania się i nie potrzebujesz rzeczy takich jak JQuery AJAX, możesz rozważyć użycie tylko silnika selektora JQuery o nazwie Sizzle.
http://sizzlejs.com/
Zauważ, że nie jest to dla wszystkich projektów, używając Sizzle i Underscore stracisz część funkcjonalności JQuery (jak AJAX), musisz rozważyć, czego naprawdę potrzebujesz do swojej konkretnej aplikacji.
źródło