Douglas Crockford douglas@crockford.com
Branch | master (v2021.8.20) |
beta (Web Demo) |
alpha (Development) |
---|---|---|---|
CI | |||
Coverage | |||
Demo | |||
Artifacts |
To install, just download https://www.jslint.com/jslint.mjs and save to file:
#!/bin/sh
curl -L https://www.jslint.com/jslint.mjs > jslint.mjs
- shell output
#!/bin/sh
printf "console.log('hello world');\n" > hello.js
node jslint.mjs hello.js
- shell output
#!/bin/sh
node --input-type=module -e '
/*jslint devel*/
import jslint from "./jslint.mjs";
let globals = ["caches", "indexedDb"];
let options = {browser: true};
let result;
let source = "console.log(\u0027hello world\u0027);\n";
result = jslint(source, options, globals);
result.warnings.forEach(function ({
formatted_message
}) {
console.error(formatted_message);
});
'
- shell output
#!/bin/sh
node jslint.mjs .
- shell output
- Download and save
jslint.mjs
,jslint.vim
to directory~/.vim/
- Add vim-command
:source ~/.vim/jslint.vim
to file~/.vimrc
- Vim can now jslint files (via nodejs):
- with vim-command
:SaveAndJslint
- with vim-key-combo
<Ctrl-S> <Ctrl-J>
- with vim-command
- screenshot
-
jslint.mjs contains the jslint function. It parses and analyzes a source file, returning an object with information about the file. It can also take an object that sets options.
-
index.html runs the jslint.mjs function in a web page. The page also depends on
browser.mjs
. -
browser.mjs runs the web user interface and generates the results reports in HTML.
-
function.html describes the jslint function and the results it produces.
JSLint can be run anywhere that JavaScript (or Java) can run.
The place to express yourself in programming is in the quality of your ideas and the efficiency of their execution. The role of style in programming is the same as in literature: It makes for better reading. A great writer doesn't express herself by putting the spaces before her commas instead of after, or by putting extra spaces inside her parentheses. A great writer will slavishly conform to some rules of style, and that in no way constrains her power to express herself creatively. See for example William Strunk's The Elements of Style [https://www.crockford.com/style.html].
This applies to programming as well. Conforming to a consistent style improves readability, and frees you to express yourself in ways that matter. JSLint here plays the part of a stern but benevolent editor, helping you to get the style right so that you can focus your creative energy where it is most needed.
- JSLint is under Unlicense License.
- CodeMirror code-editor is under MIT License.