我有这个代码:
if ( something is true ) {
var someVar = true;
} else {
var someVar = false;
}
Run Code Online (Sandbox Code Playgroud)
JsHint在else语句部分说"someVar已定义".为什么这样,我该如何解决?
谢谢
我是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(),如此屏幕截图所示:
这里找到了一个可能的提示,它建议添加"amd":false(我推测).eslintrc文件 - 但没有去.
这看起来很基本.我怎样才能.eslintrc认出来require()?
(如果在您的回答中,您可以提供有关如何涵盖更多一般案例的见解,那也会有所帮助.谢谢!)
我正在使用"使用严格"的函数形式,并且不希望Babel在翻译后添加的全局形式.问题是我使用的是一些没有使用"use strict"模式的库,并且在脚本连接后可能会抛出错误
我正在使用这段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) 我刚开始使用JSHint(通过Sublime-Linter包用于Sublime Text 2).我想抑制它在定义之前使用的函数的警告,因为我发现使用这样的函数定义没有问题.例如,以下代码生成警告:
(function($){
$(document).ready(function()
{
formValidationSetup();
refreshErrorMessages();
});
function formValidationSetup()
{
}
function refreshErrorMessages()
{
}
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
警告:
- formValidationSetup已定义但从未使用过
- refreshErrorMessages已定义但从未使用过
我已经尝试在JSHint选项中将undef设置为false,但我仍然遇到这些错误.我应该设置另一种选择吗?形成的JSLint文档的民主基金:
如果在使用之前不需要声明变量和函数,则为true.这在严格模式下不可用.
我的基本问题:在Adobe Brackets编辑器中,如何在关闭或禁用jslint时使用jshint?
我的tl;博士:在Adobe Brackets编辑器中点击javascript时,我发现我得到了jslint和jshint的结果.虽然我根据自己的喜好配置了jshint,但我永远无法避免出现警告符号,表示我未能通过jslint,所以看起来我的linting总是有问题.我只想使用jshint作为通过.jshintrc文件全局配置它的能力是非常有用的,但我没有看到关闭jslint并仍然允许jshint的方法.有人知道怎么做吗?
我想我可以转储jshint并只使用jslint,但由于后者要求配置直接卡在JS文件中,我不想这样做.
如何使用JSHint的Syntastic Vim插件验证JavaScript代码?
环境:
我在VIM + JSLint的解决方案之后安装了什么?:
.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) JSHint和JSLint是很棒的工具.
然而,"混合空间和标签"警告在报告中占主导地位.有没有办法抑制这些警告,还是有类似的服务允许空格警告被抑制?
我正在使用JSHint作为JavaScript项目(使用Visual Studio代码).在这个项目中我使用async/await,JSHint突出显示为错误.
我试图设置jshint,但似乎"esversion"的格言版本是6.
jshint是否支持异步/等待?如果是,如何打开它?如果没有,是否有任何解决方法?
jshint ×10
javascript ×9
jslint ×5
babeljs ×1
eslint ×1
jquery ×1
lint ×1
node.js ×1
syntastic ×1
syntax-error ×1
use-strict ×1
vim ×1