标签: jshint

为什么Jshint在这个if语句中说"变量已经定义"?

我有这个代码:

 if ( something is true ) {
        var someVar = true;
    } else {
       var someVar = false;
    }
Run Code Online (Sandbox Code Playgroud)

JsHint在else语句部分说"someVar已定义".为什么这样,我该如何解决?

谢谢

javascript jshint

51
推荐指数
3
解决办法
1万
查看次数

ESLint:如何设置.eslintrc来识别'require'?

我是ESLint的新手,我已成功将ESLint与IntelliJ集成.

开箱即用,我的ESLint集成无法识别node,但文档的基本审查清楚地表明,通过创建在.eslintrc我的项目文件夹的根目录中命名的配置文件(使用适当的IntelliJ设置来访问此文件)和设置"node":true,ESLint识别node(即以下全部.eslintrc作品).

// Contents of .eslintrc at root of project - support for Node and jQuery
{
  "env" : {
    "node" : true,
    "jquery" : true
  },
}
Run Code Online (Sandbox Code Playgroud)

但是,ESLint仍然无法识别require(),如此屏幕截图所示:

ESLint无法识别<code>ESLint</code>识别的基本问题<code>require()</code>.特别是,我在<a rel=这里找到了一个可能的提示,它建议添加"amd":false(我推测).eslintrc文件 - 但没有去.

这看起来很基本.我怎样才能.eslintrc认出来require()

(如果在您的回答中,您可以提供有关如何涵盖更多一般案例的见解,那也会有所帮助.谢谢!)

javascript lint intellij-idea jshint eslint

48
推荐指数
2
解决办法
2万
查看次数

如何删除babel添加的全局"use strict"

我正在使用"使用严格"的函数形式,并且不希望Babel在翻译后添加的全局形式.问题是我使用的是一些没有使用"use strict"模式的库,并且在脚本连接后可能会抛出错误

javascript use-strict jshint babeljs

48
推荐指数
7
解决办法
4万
查看次数

为什么JSHint反对按位运算符?我该如何表达这段代码?

我正在使用这段JavaScript生成一个UID:

(原版的:)

//If ID has not been defined then generate a new unique ID.
if(!id){
    id = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8); return v.toString(16); });
}
Run Code Online (Sandbox Code Playgroud)

(格式化,以便可以阅读:)

// If ID has not been defined then generate a new unique ID.
if (!id) {
    id = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(
        /[xy]/g, 
        function (c) { 
            var r = Math.random() * 16 | 0, 
                v = …
Run Code Online (Sandbox Code Playgroud)

javascript jslint jshint

45
推荐指数
3
解决办法
2万
查看次数

防止JSHint警告"functionName已定义但从未使用过"

我刚开始使用JSHint(通过Sublime-Linter包用于Sublime Text 2).我想抑制它在定义之前使用的函数的警告,因为我发现使用这样的函数定义没有问题.例如,以下代码生成警告:

(function($){ 

    $(document).ready(function()
    {
      formValidationSetup();
      refreshErrorMessages();
    });

    function formValidationSetup()
    {

    }

    function refreshErrorMessages()
    {

    }

})(jQuery);
Run Code Online (Sandbox Code Playgroud)

警告:

  1. formValidationSetup已定义但从未使用过
  2. refreshErrorMessages已定义但从未使用过

我已经尝试在JSHint选项中将undef设置为false,但我仍然遇到这些错误.我应该设置另一种选择吗?形成的JSLint文档民主基金:

如果在使用之前不需要声明变量和函数,则为true.这在严格模式下不可用.

javascript jquery jslint jshint

45
推荐指数
3
解决办法
4万
查看次数

Adobe Brackets禁用jslint但允许jshint

我的基本问题:在Adobe Brackets编辑器中,如何在关闭或禁用jslint时使用jshint?

我的tl;博士:在Adobe Brackets编辑器中点击javascript时,我发现我得到了jslint和jshint的结果.虽然我根据自己的喜好配置了jshint,但我永远无法避免出现警告符号,表示我未能通过jslint,所以看起来我的linting总是有问题.我只想使用jshint作为通过.jshintrc文件全局配置它的能力是非常有用的,但我没有看到关闭jslint并仍然允许jshint的方法.有人知道怎么做吗?

我想我可以转储jshint并只使用jslint,但由于后者要求配置直接卡在JS文件中,我不想这样做.

javascript jslint jshint adobe-brackets

45
推荐指数
2
解决办法
2万
查看次数

如何使用JSHint配置Syntastic?

如何使用JSHint的Syntastic Vim插件验证JavaScript代码?

环境:

  • Ubuntu 11.04
  • VIM - Vi IMproved 7.3

我在VIM + JSLint的解决方案之后安装了什么:

  • Vundle
  • 的node.js
  • 节点包管理器
  • jshint,全球
  • 通过Vundle安装的Syntastic(在Vim中使用:BundleInstall命令以确保安装了Syntastic.)

.vimrc中:

set nocompatible               " be iMproved
filetype off                   " required!

set rtp+=~/.vim/bundle/vundle/
call vundle#rc()

" let Vundle manage Vundle
" required! 
Bundle 'gmarik/vundle'

" My Bundles here:
Bundle 'scrooloose/syntastic'

filetype plugin indent on     " required! 

let g:syntastic_enable_signs=1
let g:syntastic_auto_jump=1
let g:syntastic_stl_format = '[%E{Err: %fe #%e}%B{, }%W{Warn: %fw #%w}]'

set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
Run Code Online (Sandbox Code Playgroud)

寻找已安装的可执行文件:

$ which gjslint …
Run Code Online (Sandbox Code Playgroud)

vim jshint syntastic

44
推荐指数
2
解决办法
3万
查看次数

在JSHint/JSLint或替代服务中禁止"混合空格和制表符"警告?

JSHint和JSLint是很棒的工具.

然而,"混合空间和标签"警告在报告中占主导地位.有没有办法抑制这些警告,还是有类似的服务允许空格警告被抑制?

javascript jslint jshint

43
推荐指数
3
解决办法
2万
查看次数

JSHint是否支持async/await?

我正在使用JSHint作为JavaScript项目(使用Visual Studio代码).在这个项目中我使用async/await,JSHint突出显示为错误.

我试图设置jshint,但似乎"esversion"的格言版本是6.

jshint是否支持异步/等待?如果是,如何打开它?如果没有,是否有任何解决方法?

javascript node.js jshint visual-studio-code

43
推荐指数
2
解决办法
2万
查看次数

如何仅从命令行检查JavaScript代码的语法错误?

可以在IDE中使用JavaScript程序或使用在线Web应用程序检查JavaScript程序,但我正在寻找一种单独检测语法错误的方法.

我已经尝试过JSLint和JSHint并查看了他们的选项,但我找不到排除警告的组合,只显示语法错误.

如何从命令行检查JavaScript代码的语法错误

javascript jslint syntax-error jshint

41
推荐指数
3
解决办法
3万
查看次数