The Symbol
function may have an optional description:
js
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:
js
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:
::: incorrect
js
/*eslint symbol-description: "error"*/
const foo = Symbol();
:::
Examples of correct code for this rule:
::: correct
js
/*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.