Validates a string as a JavaScript expression
npm install is-expression
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 inerr.locanderr.pos. Defaults tofalse.strict: Use strict mode when trying to parse the string. Defaults tofalse. Even if this option isfalse, if you have providedoptions.sourceType === 'module'which imples strict mode under ES2015, strict mode will be used.lineComment: Whentrue, allows line comments in the expression. Defaults tofalsefor safety.
See the examples below for usage.
varisExpression=require('is-expression')isExpression('myVar')//=> trueisExpression('var')//=> falseisExpression('["an", "array", "\'s"].indexOf("index")')//=> trueisExpression('var',{throw: true})// SyntaxError: Unexpected token (1:0)// at Parser.pp.raise (acorn/dist/acorn.js:940:13)// at ...isExpression('public')//=> trueisExpression('public',{strict: true})//=> falseisExpression('abc // my comment')//=> falseisExpression('abc // my comment',{lineComment: true})//=> trueMIT