Versions

symbol-description

Require symbol descriptions

The Symbol function may have an optional description:

const foo = Symbol("some description");

const someString = "some description";
const bar = Symbol(someString);

Using description promotes easier debugging: when a symbol is logged the description is used:

const foo = Symbol("some description");

> console.log(foo);
// Symbol(some description)

It may facilitate identifying symbols when one is observed during debugging.

Rule Details

This rules requires a description when creating symbols.

Examples

Examples of incorrect code for this rule:

Open in Playground
/*eslint symbol-description: "error"*/

const foo = Symbol();

Examples of correct code for this rule:

Open in Playground
/*eslint symbol-description: "error"*/

const foo = Symbol("some description");

const someString = "some description";
const bar = Symbol(someString);

When Not To Use It

This rule should not be used in ES3/5 environments. In addition, this rule can be safely turned off if you don’t want to enforce presence of description when creating Symbols.

Version

This rule was introduced in ESLint v3.4.0.

Further Reading

Resources

Change Language