Skip to content

noRedundantUseStrict (since v1.0.0)

Diagnostic Category: lint/suspicious/noRedundantUseStrict

Prevents from having redundant "use strict".

"use strict";
function foo() {
"use strict";
}
suspicious/noRedundantUseStrict.js:3:3 lint/suspicious/noRedundantUseStrict  FIXABLE  ━━━━━━━━━━━━━━

   Redundant use strict directive.
  
    1 │ "use strict";
    2 │ function foo() {
  > 3 │  	"use strict";
    	^^^^^^^^^^^^^
    4 │ }
    5 │ 
  
   This outer use strict directive already enables strict mode.
  
  > 1 │ "use strict";
   ^^^^^^^^^^^^^
    2 │ function foo() {
    3 │  	"use strict";
  
   Safe fix: Remove the redundant use strict directive.
  
    1 1  "use strict";
    2 2  function foo() {
    3  - ·"use·strict";
    4  - }
      3+ ·}
    5 4  
  
"use strict";
"use strict";
function foo() {
}
suspicious/noRedundantUseStrict.js:2:1 lint/suspicious/noRedundantUseStrict  FIXABLE  ━━━━━━━━━━━━━━

   Redundant use strict directive.
  
    1 │ "use strict";
  > 2 │ "use strict";
   ^^^^^^^^^^^^^
    3 │ 
    4 │ function foo() {
  
   This outer use strict directive already enables strict mode.
  
  > 1 │ "use strict";
   ^^^^^^^^^^^^^
    2 │ "use strict";
    3 │ 
  
   Safe fix: Remove the redundant use strict directive.
  
    1 1  "use strict";
    2  - "use·strict";
    3 2  
    4 3  function foo() {
  
function foo() {
"use strict";
"use strict";
}
suspicious/noRedundantUseStrict.js:3:1 lint/suspicious/noRedundantUseStrict  FIXABLE  ━━━━━━━━━━━━━━

   Redundant use strict directive.
  
    1 │ function foo() {
    2 │ "use strict";
  > 3 │ "use strict";
   ^^^^^^^^^^^^^
    4 │ }
    5 │ 
  
   This outer use strict directive already enables strict mode.
  
    1 │ function foo() {
  > 2 │ "use strict";
   ^^^^^^^^^^^^^
    3 │ "use strict";
    4 │ }
  
   Safe fix: Remove the redundant use strict directive.
  
    1 1  function foo() {
    2 2  "use strict";
    3  - "use·strict";
    4 3  }
    5 4  
  
class C1 {
test() {
"use strict";
}
}
suspicious/noRedundantUseStrict.js:3:3 lint/suspicious/noRedundantUseStrict  FIXABLE  ━━━━━━━━━━━━━━

   Redundant use strict directive.
  
    1 │ class C1 {
    2 │ 	test() {
  > 3 │ 		"use strict";
   		^^^^^^^^^^^^^
    4 │ 	}
    5 │ }
  
   All parts of a class's body are already in strict mode.
  
  > 1 │ class C1 {
   ^^^^^^^^^^
  > 2 │ 	test() {
  > 3 │ 		"use strict";
  > 4 │ 	}
  > 5 │ }
   ^
    6 │ 
  
   Safe fix: Remove the redundant use strict directive.
  
    1 1  class C1 {
    2 2  	test() {
    3  - "use·strict";
    4  - }
      3+ }
    5 4  }
    6 5  
  
const C2 = class {
test() {
"use strict";
}
};
suspicious/noRedundantUseStrict.js:3:3 lint/suspicious/noRedundantUseStrict  FIXABLE  ━━━━━━━━━━━━━━

   Redundant use strict directive.
  
    1 │ const C2 = class {
    2 │ 	test() {
  > 3 │ 		"use strict";
   		^^^^^^^^^^^^^
    4 │ 	}
    5 │ };
  
   All parts of a class's body are already in strict mode.
  
  > 1 │ const C2 = class {
              ^^^^^^^
  > 2 │ 	test() {
  > 3 │ 		"use strict";
  > 4 │ 	}
  > 5 │ };
   ^
    6 │ 
  
   Safe fix: Remove the redundant use strict directive.
  
    1 1  const C2 = class {
    2 2  	test() {
    3  - "use·strict";
    4  - }
      3+ }
    5 4  };
    6 5  
  
function foo() {
}
function foo() {
"use strict";
}
function bar() {
"use strict";
}