Lightweight JavaScript expression parser with error diagnostics and object interpolation.
- Safe evaluation of embedded JavaScript expressions
- Intelligent variable name suggestions for undefined variables
- Recursive object parsing
- Clear error reporting with ANSI formatting
npm install @nexssp/expression-parser
const { expressionParser } = require("@nexssp/expression-parser");
const data = { a: 5, b: 10 };
console.log(expressionParser("Sum: ${a + b}", data));
// Output: "Sum: 15"
const { parseData } = require("@nexssp/expression-parser");
const template = {
greeting: "Hello ${name}!",
calculation: "${x * y}",
nested: {
value: "${Math.PI.toFixed(2)}"
},
omitted: "Will not parse: ${undefined}"
};
const result = parseData(template, ["omitted"]);
console.log(result);
/* Output:
{
greeting: "Hello John!",
calculation: 50,
nested: { value: "3.14" },
omitted: "Will not parse: ${undefined}"
}
*/
Evaluates expressions in strings while handling errors gracefully.
Recursively processes object values, skipping specified keys.
Important: Uses JavaScript evaluation - only use with trusted input sources.