filtrex
filtrex copied to clipboard
Added support for nested property accessor
Added support to access nested properties in the external data
eq(42, compileExpression('a')(Object.create({a: 42})));
eq(42, compileExpression('a.b')(Object.create({a: { b: 42}})));
eq(42, compileExpression('a["b"]')(Object.create({a: { b: 42 }})));
eq(42, compileExpression("a['b']")(Object.create({a: { b: 42 }})));
eq(42, compileExpression('a["b"].c')(Object.create({a: { b: { c: 42 } }})));
eq(42, compileExpression('a["b"]["c"]')(Object.create({a: { b: { c: 42 } }})));
eq(42, compileExpression('a.b[0]')(Object.create({a: { b: [42]}})));
eq(42, compileExpression('a.b[0].c')(Object.create({a: { b: [{ c: 42 }]}})));
Hey Anson,
Sorry to disappoint you, but this repo has been dead for quite some time. See my fork for an up-to-date version. Currently, there already is a property accessor in filtrex, it's the operator of. One would use it like this:
eq(42, compileExpression("b of a")(Object.create({a: { b: 42 }})));