如何利用JSHint减少JavaScript的错误_javascript技巧

前言

JSHint用于分析和验证JavaScript代码是否符合您的编码规则。这个强大的工具可以帮助发现您代码中错误和问题T,它强制你的团队保持一定的编码惯例和风格,使得代码可靠和更容易阅读.

在这篇文章中,我将向您展示如何安装、配置和使用JSHint。 还包括一个例子,列出了一些我最喜欢的能使用JSHint的编辑器。

安装 JSHint

安装JSHint非常容易,你可以使用 Node 包管理器 (npm)来做。如果你还没有安装npm,你可以从 nodeJS website下载最新版,来安装Node.js 和npm.

一旦安装后npm,你就可以使用如下命令来安装JSHint:

npm install jshint -g

-g 参数是告诉npm我们要全局安装,这样我们就能在任何目录下调用这个命令。

通过命令行检查代码

现在JSHint 已经安装好了,让我们在命令行方式下使用jshint来分析一个JavaScript代码文件。

下面是一个文件名为 demo1.json的文件:

我们使用如下命令来分析代码:

jshint demo1.js

JSHint告诉我们在demo1.js文件的第8行有一个错误,原因:缺少一个分号。

如果我们补上缺少的分号,再次运行这个命令,就不会有任何错误信息输出了。

配置JSHint

JSHint有一个默认的配置来分析您的代码,但它的配置设置被设计的非常灵活。 有四种方式来为JSHint提供配置处理文件。

一种方式是使用 --config 参数来指定配置文件:

jshint demo1.js --config config.json

另一种方式是把配置放入一个叫.jshintrc的文件里, 因为 JSHint 会在同级目录下搜索这个配置文件用于代码分析,如果没有找到,它会继续上级目录查找直到根目录 ,这样就允许我们对一个工程设置不同的配置文件。

第三种方式是在 package.json 文件的 jshintConfig 属性下放入配置信息。

这三种方法中的任何一种,配置信息都是JSON格式指定每一个参数来告诉JSHint选项是打开或关闭。例如:在下面的配置文件中的“unused” 和“undef” 是来激活未使用和未定义变量的告警。 “curly” 要求您总是在循环和条件块加上大括号。 “eqeqeq” 表示禁止使用 == 和!= 而应该使用 === and !==.。“globals” 用于指定没有定义在代码中的全局变量白名单。

第四种方式是以注释的方式将配置信息写入代码文件中。

你可以查看不同的配置选项控制JSHint的行为。

一个小例子

接下来,让我们操作一下在上面提到的config.json配置文件中的选项。 假设我们有如下的一个 JavaScript 文件,这只是一小段仅供学习的代码。

如果我们执行jshint 命令demo2.js --config config.json,我们会得到如下的结果:

在我们的代码中有4个错误。在第9行JSHint提示应该用大括号包裹  “if” 代码块。 定义了变量subscription_id 但没有使用。 在第9行和11行,  “confirm” 和“console” 没有定义。

我们只需稍微修改就能避免前两个错误:

现在,让我们在 config.json文件中添加一个 devel 选项并设为 true,这样JSHint 就能识别出“confirm” 和“console” 。

至此,如果我们再次运行 jshint 命令,就没有任何错误了。

总结

JSHint是一个减少代码错误的非常好的工具。很多编辑器都提供JSHint支持。刚兴趣的朋友可以再深入研究JSHint,以上就是利用JSHint减少JavaScript错误的全部内容,希望对大家使用Javascript能有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索安装
, 配置
, javascript错误处理
jshint
javascript技巧、javascript高级技巧、javascript调试技巧、javascript小技巧、javascript实用技巧,以便于您获取更多的相关知识。

时间: 2024-10-30 00:53:14

如何利用JSHint减少JavaScript的错误_javascript技巧的相关文章

Eclipse去除js(JavaScript)验证错误_javascript技巧

第一步:去除eclipse的JS验证:将windows->preference->Java Script->Validator->Errors/Warnings->Enable Javascript Sematic validation前面的勾去掉; 第二步:右键项目 -> properties -> Builders 去掉JavaScript Validator 前面的勾如果Builders中没有JavaScript Validator这一项.那么去.proje

整理一下常见的IE错误_javascript技巧

多年以来,IE一直都是最难于调试JavaScript 错误的浏览器.IE给出的错误消息一般很短又语焉不详.而且上下文信息也很少,有时甚至一点都没有.下面几小节将分别探讨一些在IE中难于调试的JavaScript 错误. 操作终止 在IE8 之前的版本中,存在一个相对于其他浏览器而言,最令人迷惑.讨厌,也最难于调试的错误:操作终止(operation aborted).在修改尚未加载完成的页面时,就会发生操作终止错误.发生错误时,会出现一个模态对话框,告诉你"操作终止."单击确定(OK)

浅谈JavaScript异常处理语句_javascript技巧

程序运行过程中难免会出错,出错后的运行结果往往是不正确的,因此运行时出错的程序通常被强制中止.运行时的错误统称为异常,为了能在错误发生时得到一个处理的机会,JavaScript提供了异常处理语句.包含try-catch.try-catch-finally和throw. try-catch语句 try{ tryStatements } catch(exception){ catchStatements } 参数说明: tryStatements:必选项.可能发生错误的语句序列. exception

10个JavaScript中易犯小错误_javascript技巧

在今天,JavaScript已经成为了网页编辑的核心.尤其是过去的几年,互联网见证了在SPA开发.图形处理.交互等方面大量JS库的出现. 如果初次打交道,很多人会觉得js很简单.确实,对于很多有经验的工程师,或者甚至是初学者而言,实现基本的js功能几乎毫无障碍.但是JS的真实功能却比很多人想象的要更加多样.复杂.JavaScript的许多细节规定会让你的网页出现很多意想不到的bug,搞懂这些bug,对于成为一位有经验的JS开发者很重要. 常见错误一:对于this关键词的不正确引用 我曾经听一位喜

利用javascript移动div层-javascript 拖动层_javascript技巧

利用javascript移动div层-javascript 拖动层: 程序功能:利用javascript开发在界面上随意拖动以下html code中的div层. javascript移动div层-javascript 拖动层代码-html code: 复制代码 代码如下: <div id="div_Info" style="display: none; dz-index: 101; left: 175px; width: 650px; position: absolut

JavaScript利用正则表达式去除日期中的-_javascript技巧

1.说明 经常会出现这样的情况,页面的日期格式是:YYYY-MM-DD,而数据库中的日期格式是:YYYYMMDD,两者之间需要转换一下,方能传到Java后台查询数据. 通常,这种转化的方法有两种,第一种,将日期字符串先截取,然后拼接:第二种,就是利用正则表达式去掉"-" 相比较而言,第二种方法快捷,不容易出错. 2.实现源码 复制代码 代码如下: <%@ page language="java" import="java.util.*" p

JavaScript利用正则表达式去除日期中的“-”_javascript技巧

1.说明 经常会出现这样的情况,页面的日期格式是:YYYY-MM-DD,而数据库中的日期格式是:YYYYMMDD,两者之间需要转换一下,方能传到Java后台查询数据. 通常,这种转化的方法有两种,第一种,将日期字符串先截取,然后拼接:第二种,就是利用正则表达式去掉"-" 相比较而言,第二种方法快捷,不容易出错. 2.实现源码 <%@ page language="java" import="java.util.*" pageEncoding

javascript中&amp;quot;/&amp;quot;运算符常见错误_javascript技巧

//二分查找健忘递归版本 复制代码 代码如下: function binary_search(arr,target,low,high){ if(low<high){ //至少包括两个元素 var min=(low+high)/2; if(target>arr[min]) return binary_search(arr,target,min+1,high); else return binary_search(arr,target,low,min); }else if(low==high){

浅析如何利用JavaScript进行语音识别_javascript技巧

一.基础用法 var recognition = new webkitSpeechRecognition(); recognition.onresult = function(event) { console.log(event) } recognition.start(); 这里操作实际会让用户授权页面开启麦克风,如果用户允许的话,用户可以开始说话了,如果你停说话了,onresult注册的时间 则会被触发,并会讲捕获的音频返回成一个JavaScript对象. 二.响应流 你需要等待用户准备好对