HOME

TheInfoList



OR:

JSLint is a
static code analysis In computer science, static program analysis (also known as static analysis or static simulation) is the analysis of computer programs performed without executing them, in contrast with dynamic program analysis, which is performed on programs duri ...
tool used in
software development Software development is the process of designing and Implementation, implementing a software solution to Computer user satisfaction, satisfy a User (computing), user. The process is more encompassing than Computer programming, programming, wri ...
for checking if
JavaScript JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior. Web browsers have ...
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
complies with coding rules. It is provided primarily as a browser-based
web application A web application (or web app) is application software that is created with web technologies and runs via a web browser. Web applications emerged during the late 1990s and allowed for the server to dynamically build a response to the request, ...
accessible through the domain jslint.com, but there are also command-line adaptations. It was created in 2002 by
Douglas Crockford Douglas Crockford is an American computer programmer who is involved in the development of the JavaScript language. He specified the data format JSON (JavaScript Object Notation), and has developed various JavaScript related tools such as the s ...
.


License

Since 2021, JSLint uses the FSF / OSI approved Unlicense license. Before that, the JSLint license was a derivative of the
MIT License The MIT License is a permissive software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts very few restrictions on reuse and therefore has high license compatibility. Unl ...
. The sole modification was the addition of the line "''The Software shall be used for Good, not Evil.''" According to the Free Software Foundation, this previous clause made the original license non-free. It had also prevented JSLint-related software from being hosted on Google Code and from being included in the
Debian Debian () is a free and open-source software, free and open source Linux distribution, developed by the Debian Project, which was established by Ian Murdock in August 1993. Debian is one of the oldest operating systems based on the Linux kerne ...
free software Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed open-source license, under terms that allow users to run the software for any purpose as well as to study, change, distribut ...
package repositories. Because of this restriction, according to Crockford,
IBM International Business Machines Corporation (using the trademark IBM), nicknamed Big Blue, is an American Multinational corporation, multinational technology company headquartered in Armonk, New York, and present in over 175 countries. It is ...
asked Crockford in 2011 for a license to do evil, such that their customers could use it.


Influence

JSLint is considered by some to be the first JavaScript syntax checker. It has since inspired various other tools. In 2011, Anton Kovalyov created a fork, called JSHint. The main motivation behind the creation of JSHint was to provide a "less opinionated" and "more configurable" way for developers to analyse code. In 2013, Nicholas C. Zakas created ESLint. Both JSLint and JSHint lacked the ability to create additional rules for code quality and coding style. After contributing to JSHint, Zakas decided to create a new linting tool, ESLint, where all rules are configurable, and additional rules can be defined or loaded at run-time. ESLint also supports linting the latest versions of JavaScript, aka ECMAScript 2015 and above. In 2013, Palantir Technologies created TSLint, which was the
TypeScript TypeScript (abbreviated as TS) is a high-level programming language that adds static typing with optional type annotations to JavaScript. It is designed for developing large applications and transpiles to JavaScript. It is developed by Micr ...
equivalent for ESLint. In 2019 TSLint was deprecated in favor of ESLint with a TypeScript integration. In 2014, Marat Dulin created JSCS. In 2016, the JSCS Team joined the ESLint project and has since discontinued maintenance of the JSCS tool. In 2015, a comparison published by SitePoint, recommended ESLint above JSLint, JSHint and JSCS. In 2016, CodeKit also praised ESLint for "finding more issues", being "far more configurable", and being "the industry standard" for JavaScript syntax checkers.


See also

* List of tools for static code analysis, JavaScript


References


Further reading

* * Appendix C of * Section 'Performing JavaScript Syntax Checking with JSLint', Pages 143-145 of


External links

* {{Software engineering JavaScript programming tools Static program analysis tools