root 3bf41bf355 update | 1 anno fa | |
---|---|---|
.. | ||
node_modules | 1 anno fa | |
.npmignore | 1 anno fa | |
.travis.yml | 1 anno fa | |
CHANGELOG.md | 1 anno fa | |
LICENSE.md | 1 anno fa | |
README.md | 1 anno fa | |
index.js | 1 anno fa | |
package.json | 1 anno fa | |
test.js | 1 anno fa |
Validates a string as a JavaScript expression
npm install is-expression
isExpression(src[, options])
Validates a string as a JavaScript expression.
src
contains the source.
options
can contain any Acorn options (since we use Acorn under-the-hood),
or any of the following:
throw
: Throw an error if the string is not an expression. The error can
be an Acorn error, with location information in err.loc
and err.pos
.
Defaults to false
.strict
: Use strict mode when trying to parse the string. Defaults to
false
. Even if this option is false
, if you have provided
options.sourceType === 'module'
which imples strict mode under ES2015,
strict mode will be used.lineComment
: When true
, allows line comments in the expression.
Defaults to false
for safety.See the examples below for usage.
var isExpression = require('is-expression')
isExpression('myVar')
//=> true
isExpression('var')
//=> false
isExpression('["an", "array", "\'s"].indexOf("index")')
//=> true
isExpression('var', {throw: true})
// SyntaxError: Unexpected token (1:0)
// at Parser.pp.raise (acorn/dist/acorn.js:940:13)
// at ...
isExpression('public')
//=> true
isExpression('public', {strict: true})
//=> false
isExpression('abc // my comment')
//=> false
isExpression('abc // my comment', {lineComment: true})
//=> true
MIT