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 checkoptions
(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 checkoptions
(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
goto-bus-stop/estree-is-identifier
— check if an AST node is an identifier
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.