Skip to content

eslint/no-console Restriction ​

πŸ’‘ A suggestion is available for this rule.

What it does ​

Disallow the use of console.

Why is this bad? ​

In JavaScript that is designed to be executed in the browser, it’s considered a best practice to avoid using methods on console. Such messages are considered to be for debugging purposes and therefore not suitable to ship to the client. In general, calls using console should be stripped before being pushed to production.

Examples ​

Examples of incorrect code for this rule:

javascript
console.log("Log a debug level message.");
console.warn("Log a warn level message.");
console.error("Log an error level message.");
console.log = foo();

Examples of correct code for this rule:

javascript
// custom console
Console.log("Hello world!");

Options ​

allow ​

{ type: string[], default: [] }

The allow option permits the given list of console methods to be used as exceptions to this rule.

Say the option was configured as { "allow": ["info"] } then the rule would behave as follows:

Example of incorrect code for this option:

javascript
console.log("foo");

Example of incorrect code for this option:

javascript
console.info("foo");

How to use ​

To enable this rule in the CLI or using the config file, you can use:

bash
oxlint --deny no-console
json
{
  "rules": {
    "no-console": "error"
  }
}

References ​

Released under the MIT License.