JSLint es una herramienta de análisis de código estático utilizada en el desarrollo de software para comprobar si el código fuente de JavaScript cumple con las reglas de codificación . Se proporciona principalmente como una aplicación web basada en navegador , accesible a través del dominio jslint.com, pero también existen adaptaciones de línea de comandos. [ 2 ] Fue creada en 2002 por Douglas Crockford . [ 3 ]
Licencia
Desde 2021, JSLint utiliza la licencia Unlicense, aprobada por la FSF / OSI .
Antes de eso, la licencia de JSLint [ 4 ] era una derivada de la licencia MIT . [ 5 ] La única modificación fue la adición de la línea " El software debe usarse para el bien, no para el mal " .
Según la Free Software Foundation, esta cláusula anterior hacía que la licencia original no fuera libre . [ 6 ] También había impedido que el software relacionado con JSLint se alojara en Google Code [ 5 ] y se incluyera en los repositorios de paquetes de software libre de Debian . [ 7 ] Debido a esta restricción, según Crockford, IBM le pidió en 2011 una licencia para hacer el mal, de modo que sus clientes pudieran usarla. [ 8 ] [ 9 ] [ 10 ]
Influencia
JSLint es considerado por algunos como el primer verificador de sintaxis de JavaScript. [ 11 ] [ 12 ] Desde entonces ha inspirado varias otras herramientas.
En 2011, Anton Kovalyov creó una bifurcación llamada JSHint . [ 13 ] [ 14 ] [ 15 ] La principal motivación para la creación de JSHint fue proporcionar una forma "menos dogmática" y "más configurable" para que los desarrolladores analizaran el código. [ 16 ] [ 17 ] [ 18 ]
En 2013, Nicholas C. Zakas creó ESLint . [ 12 ] Tanto JSLint como JSHint carecían de la capacidad de crear reglas adicionales para la calidad del código y el estilo de codificación . Después de contribuir a JSHint, Zakas decidió crear una nueva herramienta de análisis estático, ESLint, donde todas las reglas son configurables y se pueden definir o cargar reglas adicionales en tiempo de ejecución . [ 19 ] ESLint también admite el análisis estático de las últimas versiones de JavaScript, es decir, ECMAScript 2015 y posteriores.
En 2013, Palantir Technologies creó TSLint, [ 20 ] que era el equivalente de ESLint en TypeScript . [ 21 ] En 2019, TSLint fue descontinuado en favor de ESLint con una integración de TypeScript. [ 22 ]
En 2014, Marat Dulin creó JSCS . [ 23 ] En 2016, el equipo de JSCS se unió al proyecto ESLint y desde entonces ha descontinuado el mantenimiento de la herramienta JSCS. [ 24 ] [ 25 ] [ 26 ]
En 2015, una comparación publicada por SitePoint recomendó ESLint por encima de JSLint, JSHint y JSCS. [ 27 ] En 2016, CodeKit también elogió a ESLint por "encontrar más problemas", ser "mucho más configurable" y ser "el estándar de la industria" para los verificadores de sintaxis de JavaScript. [ 11 ]
Véase también
Referencias
- ↑ "Versión v2024.11.24" . 25 de noviembre de 2024. Consultado el 27 de febrero de 2025 .
- ↑ "JSLint desde la línea de comandos" . www.hacksparrow.com . Enero de 2013. Archivado del original el 27 de febrero de 2018. Consultado el 26 de febrero de 2018 .
- ↑ "primer commit" . GitHub . 12/11/2010 . Consultado el 25/02/2018 .
Copyright 2002 Douglas Crockford. ¡Todos los derechos reservados en todo el mundo y más allá!
- ↑ "Archivo fuente de JSLint, incluyendo licencia" . Archivado del original el 9 de junio de 2013. Consultado el 22 de noviembre de 2011 .
- 1 2 "JSMin no es bienvenido en Google Code" . wonko.com . Ryan Grove. 8 de diciembre de 2008. Consultado el 26 de febrero de 2018 .
- ↑ "Diversas licencias y comentarios sobre ellas" . Fundación del Software Libre.
- ↑ "Re: El software debe usarse para el bien, no para el mal" . www.mail-archive.com .
- ↑ "IBM y sus secuaces..." Hasen Judy . 13 de febrero de 2011. Archivado del original el 3 de febrero de 2013. Consultado el 26 de febrero de 2018. Doy
permiso a IBM, sus clientes, socios y secuaces para usar JSLint con fines malvados.
- ↑ "Douglas Crockford: La saga JSON" . YouTube . 11 de agosto de 2011. Archivado del original el 15 de diciembre de 2021. Consultado el 25 de febrero de 2018.
Doy permiso a IBM, sus clientes, socios y subordinados para usar JSLint con fines malvados.
- ^ La saga JSON de Douglas Crockford
- 1 2 "Ayuda: JSLint" . codekitapp.com . 10/12/2016. Archivado del original el 26/02/2018 . Consultado el 25/02/2018 .
JSLint es el verificador de sintaxis original de JavaScript.
- 1 2 Zakas, Nicholas C. (16 de julio de 2013). "Introducción a ESLint" . nczonline.net . Archivado del original el 26 de febrero de 2018. Recuperado el 26 de febrero de 2018.
JSLint era lo último en tecnología de análisis estático de JavaScript
. - ↑ "Por qué bifurqué JSLint a JSHint" . anton.kovalyov.net . Anton Kovalyov. 2011-02-20. Archivado del original el 24-02-2011 . Recuperado el 26-02-2018 .
[JSLint] se ha vuelto incómodamente obstinado.
- ↑ "JSHint: Una bifurcación de JSLint impulsada por la comunidad" . badassjs.com . Devon Govett. 18 de febrero de 2011. Archivado del original el 21 de febrero de 2011. Recuperado el 21 de febrero de 2011.
[...] JSLint se estaba volviendo un poco demasiado dogmático [...]
- ↑ "Ayuda: JSHint" . codekitapp.com . 26/02/2018 . Consultado el 26/02/2018 .
Diseñado para ser menos dogmático y más configurable.
- ↑ Elliot, Ian (21 de febrero de 2011). "JSHint: la herramienta (más suave) para la calidad del código JavaScript" . www.i-programmer.info . Archivado del original el 23 de febrero de 2011. Consultado el 26 de febrero de 2018 .
- ↑ Zakas, Nicholas C. (18 de diciembre de 2017). "Tweet de Nicholas C. Zakas (@slicknet), creador de ESLint" . Twitter . Recuperado el 26 de febrero de 2018. Queja
de JSLint: no es suficientemente configurable. Queja de JSHint: sigue sin ser suficientemente configurable [...]
- ↑ "JSLint vs JSHint" . Scott Logic . Consultado el 26 de febrero de 2018 .
- ↑ "Comprendiendo las ventajas reales de usar ESLint" . Blog de Rangle.io . 26 de marzo de 2015. Archivado del original el 9 de febrero de 2019. Consultado el 26 de febrero de 2018 .
- ↑ "tslint v0.1.0" . npm . 28 de julio de 2013.
- ↑ "TSLint" . palantir.github.io .
- ↑ "TSLint en 2019" . Medium . 5 de junio de 2019.
- ↑ Dulin (@mdevils), Marat (21 de abril de 2014). "JSCS: JavaScript Code Style — Frontend Babel" . frontendbabel.info . Consultado el 26 de febrero de 2018 .
- ↑ "Bienvenida a JSCS en ESLint" . ESLint - Analizador de código JavaScript conectable . 14 de abril de 2016. Consultado el 26 de febrero de 2018 .
- ↑ "Fin de vida útil de JSCS" . ESLint - Analizador de código JavaScript conectable . 15 de julio de 2016. Consultado el 26 de febrero de 2018 .
- ↑ "El futuro del análisis estático de TypeScript" . ESLint . 18 de enero de 2019.
- ↑ Hartikainen, Jani (2015-03-05). "Una comparación de herramientas de análisis estático de JavaScript" . SitePoint . Recuperado el 26 de febrero de 2018 .
Lecturas adicionales
- Dörnhoefer, Mark (2006). "JavaScript" . Software SIGSOFT. Ing. Notas . 31 (4): 16– 24. doi : 10.1145/1142958.1142972 . S2CID 221777701 . Consultado el 12 de marzo de 2010 .
- Apéndice C de Crockford, Douglas (mayo de 2008). JavaScript: The Good Parts (1.ª ed.). O'Reilly Media. ISBN 978-0-596-51774-8.
- Sección «Realización de comprobaciones de sintaxis de JavaScript con JSLint», páginas 143-145 de Asleson, Ryan; Nathaniel T. Schutta (14 de octubre de 2005). Fundamentos de Ajax (1.ª ed.). Apress. ISBN 1-59059-582-3.
Enlaces externos
- Herramientas de programación JavaScript
- Herramientas de análisis estático de programas