Subrayado.js


Underscore.js es una biblioteca de JavaScript que proporciona funciones de utilidad para tareas de programación comunes. [2] Es comparable a las características proporcionadas por Prototype.js y el lenguaje Ruby , pero opta por un diseño de programación funcional en lugar de extender prototipos de objetos . La documentación se refiere a Underscore.js como "la corbata para acompañar el esmoquin de jQuery y los tirantes de Backbone.js ". Underscore.js fue creado por Jeremy Ashkenas , quien también es conocido por Backbone.js y CoffeeScript . [3]

Jeremy Ashkenas creó Underscore a fines de 2009 como un spin-off del proyecto DocumentCloud , junto con Backbone.js . Fue una de las primeras bibliotecas para JavaScript en proporcionar utilidades generales de programación funcional, inspirándose en Prototype.js , JavaScript funcional de Oliver Steele y Micro-Templating de John Resig. [4]

En 2012, John-David Dalton creó una bifurcación de Underscore, llamada Lo-Dash (ahora Lodash ). Lo-Dash se promocionó inicialmente como una alternativa directa para Underscore con "consistencia, personalización, rendimiento y extras". [5] Sin embargo, Lodash ya se apartó de la interfaz Underscore original en una etapa temprana [6] y comenzó a realizar cambios más drásticos con la versión 3.0.0, lo que hizo necesario que los usuarios de Lodash cambiaran su código. [7]

En mayo de 2015, Jeremy Ashkenas anunció que John-David Dalton se había puesto en contacto con él para volver a fusionar las bibliotecas. A pesar de las preocupaciones sobre el estilo y el tamaño del código, Ashkenas no se opuso a fusionar algunas de las extensiones de Lodash en Underscore. [8] En ese momento, varios desarrolladores contribuyeron a Underscore y Lodash en paralelo; este grupo de colaboradores comenzó a realizar cambios en el guión bajo para hacerlo más parecido a Lodash. [9]

Sin embargo, paralelamente a este esfuerzo, Dalton realizó cambios más drásticos en la interfaz de Lodash. En junio de 2015, anunció la versión 4.0.0 de Lodash, que distanció aún más a Lodash de la interfaz de subrayado, al tiempo que se apartó significativamente de la serie de la versión 3.x de Lodash. [10] [11] Esto provocó que algunos proyectos que dependían de Lodash crearan sus propias distribuciones de Lodash 3. [12]

En febrero de 2016, Dalton anunció que consideraba que el esfuerzo de fusión estaba completo. Sugirió que los usuarios cambien de subrayado a Lodash, motivado por las estadísticas de uso compartido. [13] Sin embargo, un mantenedor de Underscore dejó en claro que no tenía intención de dejar de desarrollar Underscore como una biblioteca separada. [14] Ambas bibliotecas entraron en un estado de baja actividad de desarrollo después de 2016. [15] [16]