estree-util-is-identifier-name
estree utility to check if something can be an identifier.
Contents
What is this?
This package is a utility that can be used to check if something can be an
identifier name.
For example, a
, _
, and a1
are fine, but 1
and -
are not.
When should I use this?
You can use this utility when generating IDs from strings or parsing IDs.
Install
This package is ESM only.
In Node.js (version 16+), install with npm:
npm install estree-util-is-identifier-name
In Deno with esm.sh
:
import {cont, name, start} from 'https://esm.sh/estree-util-is-identifier-name@3'
In browsers with esm.sh
:
<script type="module">
import {cont, name, start} from 'https://esm.sh/estree-util-is-identifier-name@3?bundle'
</script>
Use
import {cont, name, start} from 'estree-util-is-identifier-name'
name('$something69') // => true
name('69') // => false
name('var') // => true (this does not handle keywords)
start(48) // => false (code point for `'0'`)
cont(48) // => true (code point for `'0'`)
API
This package exports the identifiers cont
,
name
, and
start
.
There is no default export.
cont(code[, options])
Checks if the given code point can continue an identifier.
Parameters
code
(number
)
— code point to check
options
(Options
, optional)
— configuration
Returns
Whether code
can continue an identifier (boolean
).
name(name[, options])
Checks if the given value is a valid identifier name.
Parameters
name
(string
)
— identifier to check
options
(Options
, optional)
— configuration
Returns
Whether name
can be an identifier (boolean
).
start(code)
Checks if the given code point can start an identifier.
Parameters
code
(number
)
— code point to check
Returns
Whether code
can start an identifier (boolean
).
Options
Configuration (TypeScript type).
Fields
jsx
(boolean
, default: false
)
— support JSX identifiers.
Types
This package is fully typed with TypeScript.
It exports the additional type Options
.
Compatibility
Projects maintained by the unified collective are compatible with maintained
versions of Node.js.
When we cut a new major release, we drop support for unmaintained versions of
Node.
This means we try to keep the current release line,
estree-util-is-identifier-name@^3
, compatible with Node.js 16.
Related
Contribute
See contributing.md
in syntax-tree/.github
for
ways to get started.
See support.md
for ways to get help.
This project has a code of conduct.
By interacting with this repository, organization, or community you agree to
abide by its terms.
License
MIT © Titus Wormer