Skip to content
← Back to rules

eslint/no-new Suspicious

What it does ​

Disallow new operators outside of assignments or comparisons.

Why is this bad? ​

Calling new without assigning or comparing it the reference is thrown away and in many cases the constructor can be replaced with a function.

Examples ​

Examples of incorrect code for this rule:

javascript
new Person();

() => {
  new Date();
};

Examples of correct code for this rule:

javascript
var a = new Date()(() => new Date());

How to use ​

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

json
{
  "rules": {
    "no-new": "error"
  }
}
ts
import { defineConfig } from "oxlint";

export default defineConfig({
  rules: {
    "no-new": "error",
  },
});
bash
oxlint --deny no-new

Version ​

This rule was added in v0.4.0.

References ​