Javascript JSON Queries
Isn't a database, but a functional, fast and simple way to manipulate data in Javascript.
Methods:
find ( Object query )
filter ( Function )
join ( Array data , Object match, String putIn, Bool append )
left_join ( Array data, Object match, String putIn, Bool append )
right_join ( Array data, Object match, String putIn, Bool append )
reverse ( void )
group ( Array [prop], ... , Object options )
sort ( Object {prop: asc|desc, ...} )
slice ( Number start , Number end )
limit ( Number offset, Number count )
each ( Function )
size ( void )
get ( Number index )
all ( void )
apply ( Function )
scope ( Function )
add ( Array data )
clone ( void )
print ( ...properties )
debug ( String name, Function )
Operators
- eq - Equal
- not - Not equal
- in - In array
- nin - Not int array
- gt - greater than
- gte - greater than or equal
- lt - lower than
- lte - lower than or equal
- between - between interval
- match - regular expression
Examples
Considering:
var products = name: "notebook" cat: 1 price: 179900 name: "computer" cat: 1 price: 97850 name: "js book" cat: 2 price: 3100 name: "py book" cat: 2 price: 2900 name: "game" cat: 3 price: 15000 name: "ipod" cat: 4 price: 19000;
Find, sort and print
; // py book 29.00// js book 31.00// game 150.00
filter
...
join
var categories = id: 1 name: "computer" id: 2 name: "books" id: 3 name: "games" id: 4 name: "apple" id: 5 name: "car"; ...
scope
scope { if externalVar this; if anotherExternalVar this; } ...
sort and reverse
;
each
...
Cases
DB.js was used to generate complex charts and statistics from Brazil President Elections 2014 manipulating data from hundreds of studies.
License
MIT.
Author
Alejandro Moraga moraga86@gmail.com