JavaScript验证工具JSLint
微信公众号:前端程序猿之路
关注可了解更多的前端知识,反馈问题或建议,请公众号留言。
如果你觉得公众号内容对你有帮助,欢迎关注并转载
官网链接
官网链接:http://www.jslint.com/jslint
jslint文档:http://www.jslint.com/lint.html
jslint简介
上一篇讲了csslint ,除了cssLint网站,也有jslint网站,只需要把JavaScript代码直接粘贴到http://www.jslint.com/上,会提示错误位置及出错原因JSLint 对 JavaScript 脚本的质量检测
检测内容
- 检测语法错误:例如大括号“{}”的配对错误。
- 变量定义规范:例如未定义变量的检测。
- 代码格式规范:例如句末分号的缺失。
- 蹩脚语言特性的使用检测:如 eval 和 with 的使用限制。
jslint检测规则
①JSLint要求所有代码行都以分号结束。尽管JavaScript确实允许将换行符作为行结束符,但一般认为这种做法是不明确的,而且是不好的编码风格。
②使用if和for的语句必须使用大括号把语句块括起来。
③不同于其他编程语言,在JavaScript中,块不会作为变量的作用域。JavaScript只支持函数级作用域。因此,JSLint只接受作为function、if、switch、while、for、do和try语句一部分的块,其他的块都会标志为错误。
④var只能声明一次,而且在使用之前必须声明。
⑤JSLint会把出现在return、break、continue或throw语句后面的代码标志为不可达的代码。这些语句后面必须紧跟一个结束大括号。
⑥结合Ext,常见的错误有缺少或者多了空格,函数中缺少use strict:Missing 'use strict' statement.,{}未对齐,变量未定义,代码写在不是期望的位置等,这些大部分都可以在option里面配置是否验证。
⑦for in 语句 避免遍历原型链上所有属性,建议如下写法:
for(name in object) { if(object.hasOwnProperty(name)) {.... } }
但是如果每次检测都粘贴到网站http://www.jslint.com/,这么做有时候会很麻烦。如果开发在Nodejs环境下,可以通过构建工具(Grunt或Gulp)
在命令行直接运行,更加方便。以Gulp为例,在package.json中添加
devDependencies:"devDependencies": {"gulp-jslint": "*","gulp": "^3.6.2"}
然后,定义jslint任务:
varjslint = require('gulp-jslint'),gulp = require('gulp');gulp.task('jslint', function () {return gulp.src(['./controllers/*.js','./models/*.js','./*.js']).pipe(jslint({node: true,nomen: true,sloppy: true,plusplus: true,unparam: true,stupid: true}));});gulp.task('default', ['jslint']);
另外,运行jslint前,一般会提示Warning: JSLint will hurt your feelings
.一般JSLint会直接找出了上百个问题,然后再一个一个修复,包括严格的空格检查,都需要修复。所以要根据实际问概况考虑是否使用
参考链接
https://www.jslint.com/help.html
https://www.liaoxuefeng.com/article/950828709967040
https://blog.csdn.net/lifushan123/article/details/45272225
JavaScript验证工具JSLint相关推荐
- javaScript排版工具
javaScript排版工具: http://jsbeautifier.org/ javaScript验证工具:http://jslint.com/ Css排版工具:http://csswow.go ...
- 我应该使用JSLint或JSHint JavaScript验证吗? [关闭]
本文翻译自:Should I use JSLint or JSHint JavaScript validation? [closed] I am currently validating my Jav ...
- JavaScript语法检查与构建工具——JSLint和NodeJS的使用
JavaScript语法检查与构建工具--JSLint和NodeJS的使用 本文使用于高级JavaScript开发者,初学者慎入! 本文适用于意图创造类似jQuery库的开发者,掌握了本文所述的方法之 ...
- JavaScript开发工具大全 1
译者按: 最全的JavaScript开发工具列表,总有一款适合你! 原文: THE ULTIMATE LIST OF JAVASCRIPT TOOLS 译者: Fundebug 为了保证可读性,本文采 ...
- JavaScript开发工具列表
摘要:你经常使用JavaScript开发吗?你使用哪些JavaScript开发工具?本文中,总结了一些非常实用的JavaScript工具,全部是免费的.使用这些工具将直接影响你的工作效率. 在今天网络 ...
- JavaScript 开发工具webstrom使用指南
WebStorm 是 JetBrains 推出的一款商业的 JavaScript 开发工具 任何一个编辑器都需要保存(ctrl + s),这是所有win平台上编辑类软件的特点,但是webstorm编辑 ...
- javascript常用工具类整理(copy)
JavaScript常用工具类 类型 日期 数组 字符串 数字 网络请求 节点 存储 其他 1.类型 isString (o) { //是否字符串return Object.prototype.toS ...
- 【JavaScript学习】JavaScript 常用工具类封装
文章目录 1.JavaScript 常用工具类封装 (1)获得浏览器地址所有参数 (2)将json转为get参数 (3)格式校验工具类 (4)数组操作工具类 (5)表单取值工具类 (6)时间转换工具类 ...
- JavaScript 校验:JSLint、JSHint、JSCS、ESLint
JSLint,古老,不可配置,不可扩展,不可禁用许多特性的校验 JSHint,可配置的JSLint版本 JSCS,代码样式检查,只捕获与代码格式化相关的问题,而不是潜在的bug或错误.已经与 ESLi ...
最新文章
- html5语音对讲,c#语音对讲demo
- 阿里技术专家加多:Java异步编程实战之基于JDK中的Future实现异步编程 | 文末赠书...
- 工作中用到的java反射机制_(转)JAVA-反射机制的使用
- b样条和三次样条_样条曲线
- 想要玩转实现负载均衡,你知道这些吗?
- 2019春第六周编程总结
- rdd分片 spark_大数据面试题(Spark(一))
- Leetcode 286.墙与门
- mysql自动化巡检_mysql自动化巡检脚本生成html报告
- 开发组2007年3月开发计划
- 字符数组的ss.toString()和new String(ss)的问题
- java移动文件导致tomcat死掉_利用平台自带的tomcat作为服务 当上传文件失败后服务总死掉...
- CVE-2020-11946 ManageEngine OpManager 命令执行
- 【Ydui.js】------ ydui.js 中的 util 中的方法讲解如何调用使用 例如:获取地址栏信息,js 倒计时,cookie, 获取图片地址等
- mysql got signal 6_[ERROR] mysqld got signal 6 错误
- 白话空间统计二十三回归分析番外:残差可视化
- curl证书过期_centos7内核升级及curl访问https证书过期处理
- “当红不让,悦未来”,武汉环球广场与妳如约而至,共赴美好
- git commit使用其他人的用户名和邮箱提交代码
- 代码优化小技巧-使用enum统一返回code码