Spec-Zone.ru › ESLint

no-new

Запрет операторов new вне присваиваний или сравнений

Цель использования new с конструктором обычно заключается в создании объекта определённого типа и сохранении этого объекта в переменной, например:

const person = new Person();

Реже используют new и не сохраняют результат, например:

new Person();

В этом случае созданный объект отбрасывается, поскольку его ссылка нигде не сохраняется. Во многих случаях это означает, что конструктор следует заменить функцией, для вызова которой не требуется использовать new.

Подробное описание правила

Это правило призвано обеспечить единообразие и соблюдение соглашений, запрещая вызовы конструкторов с использованием ключевого слова new, если созданный объект не присваивается переменной.

Примеры неправильного кода для этого правила:

Открыть в Playground
/*eslint no-new: "error"*/

new Thing();

Примеры правильного кода для этого правила:

Открыть в Playground
/*eslint no-new: "error"*/

const thing = new Thing();

Foo();

Параметры

У этого правила нет параметров.

Версия

Это правило появилось в ESLint v0.0.7.

Ресурсы

  • Исходный код правила
  • Исходный код тестов

© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/no-new

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API