2014-05-18 22:21:00 +02:00

1.1 KiB

Function parse

Parse an expression. Returns a node tree which can be compiled and evaluated.

Syntax

math.parse(expr)
math.parse(expr, nodes)
math.parse([expr1, expr2, expr3, ...])
math.parse([expr1, expr2, expr3, ...], nodes)

Parameters

Parameter Type Description
expr String | String[] | Matrix Expression to be parsed
nodes Object<String, Node> Optional custom nodes

Returns

Type Description
Node | Node[] A node tree

Examples

var math = mathjs();

var node = math.parse('sqrt(3^2 + 4^2)');
node.compile(math).eval(); // 5

var scope = {a: 3, b: 4}
var node = math.parse('a * b'); // 12
var code = node.compile(math);
code.eval(scope); // 12
scope.a = 5;
code.eval(scope); // 20

var nodes = math.parse(['a = 3', 'b = 4', 'a * b']);
var scope2 = {};
nodes.map(function(node) {
  return node.compile(math).eval(scope2);
});  // returns [3, 4, 12]