The same as evaluate but returns a discriminated union instead of throwing. Non-ESCalcError exceptions are still re-thrown.
ESCalcError
An NCalc expression string or a pre-parsed LogicalExpression.
Optional
Evaluation options.
{ type: 'success', result } on success, or { type: 'error', error } on failure.
{ type: 'success', result }
{ type: 'error', error }
const result = evaluateSafe('[x] + 1', { params: new Map([['x', 5]]) });if (result.type === 'success') { console.log(result.result); // 6} else { console.error(result.error.message);} Copy
const result = evaluateSafe('[x] + 1', { params: new Map([['x', 5]]) });if (result.type === 'success') { console.log(result.result); // 6} else { console.error(result.error.message);}
The same as evaluate but returns a discriminated union instead of throwing. Non-
ESCalcErrorexceptions are still re-thrown.