Estoy empezando a aprender JavaScript, y tropecé con Underscore.js y jQuery. Underscore se ve muy bien, pero me pregunto si jQuery ya no ofrece funciones similares a Underscore. Entonces, ¿vale la pena usar ambos?¿Se complementan Underscore.js y jQuery?
Respuesta
tomado del sitio underscore:
Es la corbata para ir junto con esmoquin de jQuery, y tirantes de Backbone.js.
Underscore es más adecuado para la manipulación de datos y trae muchos métodos de Ruby a JavaScript. Hay algo de cruce, pero no lo suficiente como para que sean mutuamente excluyentes.
- jQuery se hará cargo de la mayor parte de su manipulación del DOM
- Backbone.js le ayudará a organizar todo su código y darle a su aplicación js alguna estructura (patrón MVC)
- underscore.js le dará utilidad de bajo nivel realmente útil. Nunca habría necesitado esta biblioteca hasta que realmente me metí en aplicaciones js (también es un requisito para backbone.js)
Underscore proporciona un total de 60 funciones para el procesamiento de datos/código. Se acordó que muchas de las funcionalidades están presentes en otras bibliotecas como jQuery, Prototype o script.aculo.us. Por ejemplo, funciones como each, map, find, filter o toArray están presentes en jQuery. Estos están en Underscore también. Esto es para hacer que la biblioteca sea independiente de jQuery.
¿Cuándo utilizar el subrayado?:
Actualmente, se usa ampliamente con Backbone.js para usar la arquitectura MVC para crear una aplicación web de JavaScript de una página. La capacidad más significativa de underscore.js es la capacidad de creación de plantillas (lo que jQuery no puede hacer). Esta biblioteca tiene muchas otras funciones útiles, que son independientes de otras bibliotecas de Javascript.
A continuación encontrará una lista de las funciones proporcionadas por Subrayado:
Colecciones: cada uno, mapa, reducir, reduceRight, buscar, filtrar, rechazar, todos, cualesquiera, incluir, invocar, desplume, máximo, mínimo , sortBy, GroupBy, sortedIndex, shuffle, toArray, tamaño
matriz: primero, inicial, apellido, descanso, compacto, aplanar, sin, unión, intersección, diferencia, uniq, código postal, indexOf, lastIndexOf, gama
Función: bind, bindAll, memoize, retardo, aplazar, válvula reguladora, de supresión de rebotes, una vez, después, abrigo, componen
objeto: claves, los valores, funciones, extender, valores predeterminados, clon, grifo, IsEqual isEmpty, isElement, isArray, isArguments, isFunction, isString, ISNUMBER, IsBoolean, ISDATE, isRegExp, isNaN, isNull, isUndefined
Utitity: noConflict, la identidad, los tiempos, mixin, uniqueId, escape, plantilla
hola Umesh, ya que _.template es solo una de las 60 funciones de Subrayado, es realmente suficiente para que valga la pena? –
@timpeterson, entiendo esto. pero no solo estamos usando _.template, hay muchas más funciones junto con eso como bind, bindAll, cada uno, mapa, etc. Podemos usar muchas funciones como sea posible. –
pero enlace, cada uno, el mapa está en jQuery, así que parece redundante, ¿no? –
Si le preocupa la superposición, y no necesita elementos como JQuery AJAX, entonces podría considerar usar solo el motor de selección JQuery, llamado Sizzle.
Tenga en cuenta que esto no es para todos los proyectos, mediante el uso de chisporroteo y subrayan que perderá algunas funciones jQuery (como AJAX), debe tener en cuenta lo que realmente necesita para su aplicación específica.
http://projects.jga.me/jquery-builder/ Esta herramienta puede ayudarlo a eliminar el código jQuery innecesario. Además, los módulos lodash están disponibles en NPM – DigitalDesignDj
- 1. Underscore.js .filter() y .any()
- 2. Equivalente a Underscore.js _.pluck en jQuery
- 3. underscore.js: _.throttle (función, espera)
- 4. Rieles con plantillas Underscore.js
- 5. Iterar objetos con underscore.js
- 6. underscore.js para comprobar nula
- 7. cómo romper la función _.each en underscore.js
- 8. Uso de Underscore.js con ASP.NET
- 9. Plantillas Underscore.js Dentro de JSP
- 10. Usando underscore.js groupBy con Ember.js
- 11. plantilla externa de html para underscore.js y backbone.js
- 12. Si hay instrucciones condicionales en Underscore.js
- 13. variable opcional en la plantilla underscore.js
- 14. jQuery se desvanece y se desvanece en
- 15. cada implementación en la biblioteca underscore.js
- 16. variables dentro de la plantilla underscore.js
- 17. ¿por qué _ escape modifica/caracteres en Underscore.js?
- 18. hallazgo clave de objeto en underscore.js
- 19. En la biblioteca Underscore.js de JavaScript, ¿qué significa "contexto" y cómo lo uso?
- 20. Usando jsfiddle: ¿cómo puedo usar las librerías underscore.js o backbone.js?
- 21. use las funciones de lista underscore.js en la colección de objetos jquery
- 22. SVG se puede arrastrar usando JQuery y Jquery-svg
- 23. Jquery se pueden arrastrar y tamaño variable
- 24. Jquery que se puede arrastrar y clon
- 25. depuración de plantillas underscore.js es difícil sin números de línea
- 26. Interpolar dentro de los atributos html con Underscore.js
- 27. ¿Por qué Underscore.js eliminó el soporte para AMD?
- 28. uso de JavaScript con Underscore.js para ordenar a la inversa
- 29. longitud de objeto negativo posible en JavaScript o underscore.js? ¿sentido?
- 30. Underscore.js: la forma de las funciones habituales de la cadena
El primer párrafo en su página de inicio dice: "Es el vínculo para ir junto con el tux de jQuery y los tirantes de Backbone.js". – Anurag
sí, pero creo que lo que la operación indica con la palabra "complemento" es que, dado que muchas de las funciones se superponen, ¿los dos marcos realmente tienen sentido juntos? Por ejemplo, las diferencias entre $ .each y _each son lo suficientemente sutiles como para hacer que alguien se confunda al intentar mezclarlos y combinarlos. – BishopZ
Si te gusta underscorejs, entonces realmente deberías estar usando http://lodash.com/ – Neil