zoukankan      html  css  js  c++  java
  • Node调试之道-----JSHint

    Node调试之道-----JSHint

      Node的优势我就不再乱吹捧了,它让javascript统一web的前后台成为了可能。但是对于新手来说,server端的JS代码可能不像client端的代码那么好调试,直观。client端JS代码的调试基本上经历了一个从“肉眼--alert()--firebug(或者其它的developer tools)”的一个过程。而对于server端的调试,可能新手仍然停留在使用“肉眼--console()”的阶段。其实,Node经过了这么多年(虽然才短短几年)的发展,也有了很多不错的第三方的调试工具。包括Node内建的调试工具debugger、node-inspector等。现在我们介绍一种在Node下检查简单错误的JS代码验证工具JSHint。

      JSHint的具体介绍参考http://www.jshint.com/about/,说直白点儿,JSHint就是一个检查JS代码规范与否的工具,它可以用来检查任何(包括server端和client端)地方的JS代码的规范性。它提供了配置的方法,从而让开发者自己来定义检查哪些规范上的错误。这就给开发者带来了很大的便利性,因为在开发过程中,尤其是在团队开发过程中会经常遇到各种各样因不符合规范而带来的问题,或者一些常见的文本错误,如使用未定义的函数或者参数等。

      1、安装JSHint。

      打开cmd命令窗口,输入以下命令:

      

    npm install -g jshint  //-g的意思是全局使用
    

      注:如果提示npm不是内部或者外部命令,那么多半是你没有安装node或者npm。具体安装过程请参考http://dailyjs.com/2012/05/03/windows-and-node-1/。

      2、运行JSHint。

      打开cmd命令窗口,使用cd切换到你对应的应用目录下,输入一下命令:

    jshint my_app.js
    

      注:my_app.js即是你打算校验或者检查的文件。

      3、配置JSHint。

      JSHint提供了配置的方法,使你可以根据自己团队或者爱好来定义检查校验的规则。可以到https://github.com/jshint/node-jshint/blob/master/.jshintrc复制默认的规则文件。

      方法一:如果你将复制来的规则文件命名为.jshintrc的文件,并且将文件放在对应目录或者父目录下,那么在运行JSHint的时候,会自动检索并使用此规则文件。

      方法二:如果你并没有将规则文件命名为符合规则的名字(即用.jshintrc),那么可以在运行JSHint的时候手动指定规则文件,例如你将规则文件命名为jshint.json。那么可以使用一下命令来运行JSHint并应用你的规则:

      

    jshint my_app.js --config /root/application/jshint.json  //指定规则文件路径
    

      4、配置文件的规则。

      配置文件的规则由很多,包括常见的分号使用与否、class构造器函数首字母大写等。具体的规则不再一一赘述,请参考http://www.jshint.com/docs/。

      通过使用JSHint这一工具,会将你JS代码中很多常见的错误或者不小心搞错的代码检查出来。当然,JSHint不会强大到检查出你所有的错误。不过不用担心,还有另外几个可以为Node所用的调试工具,这次就仅仅介绍一下JSHint。

      以上是本人的一点愚见,如有错误,敬请指出。欢迎交流讨论。

  • 相关阅读:
    在 Windows 上测试 Redis Cluster的集群填坑笔记
    vmware安装黑苹果教程
    微信支付v3发布到iis时的证书问题
    Linux下安装SQL Server 2016(连接篇SQL Server on linux)
    Linux下安装SQL Server 2016(连接篇SQL Server on linux)
    Linux下安装SQL Server 2016(安装篇SQL Server on linux)
    Linux下安装SQL Server 2016(准备篇SQL Server on linux)
    客服端与服务端APP支付宝支付接口联调的那些坑
    ASP.NET MVC]WebAPI应用支持HTTPS的经验总结
    .net平台下C#socket通信(中)
  • 原文地址:https://www.cnblogs.com/front-Thinking/p/3754444.html
Copyright © 2011-2022 走看看