grunt-contrib-jshint js代码检查

grunt-contrib-jshint:用于javascript代码检查(并会给出建议),发布js代码前执行jshint任务,
可以避免出现一些低级语法问题
jshint拥有非常丰富的配置,可以自由控制检验的级别。

安装插件:npm install grunt-contrib-jshint --save-dev

grunt.initConfig({
  pkg: grunt.file.readJSON('package.json'),
  jshint: {
    options: {
      //大括号包裹
      curly: true,
      //对于简单类型,用于===和!==,而不是==和!=
      eqeqeq: true,
      //对于首字母大写的函数(声明的类),强制使用new
      newcap: true,
      //禁用arguments.caller和arguments.callee
      noarg: true,
      // 对于属性使用aaa.bbb,而不是aaa['bbb']
      sub: true,
      //查找所有未定义变量
      undef: true,
      //查找类似与if(a = 0)这样的代码
      boss: true,
      //指定运行环境为node.js
      node: true
    },
    //具体任务配置
    files: {
      src: ['src/*.js']
    }
  }
});

jshint可以结合grunt-contrib-concat使用,在合并文件前(后)对js进行检查。

grunt.initConfig({
  concat:{
    dist: {
      src: ['src/foo.js','src/bar.js'],
      dest: 'dist/output.js'
    } 
  },
  jshint:{
    beforeconcat: ['src/foo.js','src/bar.js'],
    afterconcat: ['dist/output.js']
  }
});

类似的还有grunt-contrib-csslint插件,用于css代码检查,用法基本一样,只是配置上存在差异

原文地址:https://www.cnblogs.com/cyj7/p/4844400.html