Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JSHint silence "Variable is defined but never used"

I want to silence the JSHint warning "attrs is defined but never used" for the variable attrs. However I do not want to use the option /* jshint unused:false */ since this will turn off the warning altogether. I want the warning to be disabled only for attrs.

like image 418
Amal Antony Avatar asked Feb 26 '14 09:02

Amal Antony


1 Answers

For global variables

Add

/* exported variableNameHere */

at the top of your script. In your case, replace variableNameHere with attrs. This tells jshint that attrs will be used elsewhere.

For multiple variables:

/* exported attrs, somethingElse, somethingElse2 */

Docs here.

For local variables

You can ignore all unused local variables within a given function scope using the method outlined in this jshint commit and this GitHub issue. Example:

//jshint unused:true
var a;

function foo(b) {
    //jshint unused:false
    return 1;
}

foo();

// ->
// Line 1: 'a' is defined but never used.

This doesn't seem to be documented anywhere else, but works when tested on http://jshint.com/

like image 194
Josh Harrison Avatar answered Oct 13 '22 13:10

Josh Harrison