Skip to content

Latest commit

 

History

History
59 lines (37 loc) · 941 Bytes

no-new-symbol.md

File metadata and controls

59 lines (37 loc) · 941 Bytes
title rule_type handled_by_typescript further_reading
no-new-symbol
problem
true

Symbol is not intended to be used with the new operator, but to be called as a function.

var foo = new Symbol("foo");

This throws a TypeError exception.

Rule Details

This rule is aimed at preventing the accidental calling of Symbol with the new operator.

Examples

Examples of incorrect code for this rule:

::: incorrect

/*eslint no-new-symbol: "error"*/
/*eslint-env es6*/

var foo = new Symbol('foo');

:::

Examples of correct code for this rule:

::: correct

/*eslint no-new-symbol: "error"*/
/*eslint-env es6*/

var foo = Symbol('foo');

// Ignores shadowed Symbol.
function bar(Symbol) {
    const baz = new Symbol("baz");
}

:::

When Not To Use It

This rule should not be used in ES3/5 environments.