JSHint 配置浅析
发表于 2014-10-25 | 分类于
JSHint |
1条评论JSHint,发现错误和潜在问题的社区驱动的工具
JSLint
错误解析
单独安装
12 3 4
| $ jshint myfile.js
myfile.js: line 10, col 39, Octal literals are not allowed in strict mode.
1 error
|
编辑器和IDE插件
Sublime-JSHint
安装
Ctrl+Shift+P
或
Cmd+Shift+P
输入
install
,选择
Package
Control: Install Package
输入
js gutter
,选择
JSHint
Gutter
使用方法:
Tools -> Command Palette (
Ctrl+Shift+P
或者
Cmd+Shift+P
)
然后输入
jshint
– 或者 –
Ctrl+Shift+J
(或者 Mac 使用
Cmd+Shift+J
)
– 或者 –
当前文件右键选择 JSHint -> Lint Code
– 或者 –
打开 JavaScript 文件,菜单 View -> Show Console,然后输入
view.run_command("jshint"
)
编辑,加载或保存时自动检查
右键 -> JSHint -> Set Plugin Options
三项设置为
true
12 3 4 5
| {
"lint_on_edit": true,
"lint_on_load": true,
"lint_on_save": true
}
|
三种配置方式:
通过
--config
标记手动配置
使用
.jshintrc 文件
配置放到项目的
package.json 文件里面,
jshintConfig 下面
自定义 .jshintrc 配置文件
JSHint 设置
强制选项
禁用位运算符,位运算符在 JavaScript 中使用较少,经常是把 && 错输成 &
循环或者条件语句必须使用花括号包围
强制使用三等号
兼容低级浏览器 IE 6/7/8/9
禁止重写原生对象的原型,比如
Array
,
Date
代码缩进
禁止定义之前使用变量,忽略
function
函数声明
构造器函数首字母大写
禁止使用
arguments.caller
和
arguments.callee
,未来会被弃用,
ECMAScript 5 禁止使用
arguments.callee
为
true
时,禁止单引号和双引号混用
变量未定义
变量未使用
严格模式
最多参数个数
最大嵌套深度
复杂度检测
最大行数
宽松选项
控制“缺少分号”的警告
12
| "asi": true
"boss": true
|
忽略
debugger
控制
eval
使用警告
检查一行代码最后声明后面的分号是否遗漏
检查不安全的折行,忽略逗号在最前面的编程风格
检查循环内嵌套
function
检查多行字符串
检查无效的
typeof
操作符值
person['name']
vs.
person.name
new function () { ... }
和
new
Object
;
在非构造器函数中使用
this
环境
预定义一些全局变量
预定义全局变量
document
,
navigator
,
FileReader
等
定义用于调试的全局变量:
console
,
alert
定义全局变量
12
| "jquery": true,
"node": true
|
#JSHint