UNPKG

forerunnerdb

Version:

A NoSQL document store database for browsers and Node.js.

124 lines (105 loc) 2 kB
<html> <body> <script src="../lib/BTree.js"></script> <script> var tree = new BinaryTree(), search, alpha, data = [], count = 50000, countMax = count, total = count, name, obj, start, overall = 0, names = ['Jim', 'Alan', 'Bob', 'Nigel', 'Jane', 'Alice', 'DJ Kool', 'Anne', 'Tamara']; tree.index({ name: -1, age: -1, type: -1 }); tree.insert({ name: 'Charlie', age: 15, type: 'User' }); tree.insert({ name: 'Charlie', age: 12, type: 'User' }); tree.insert({ name: 'Angel', age: 20, type: 'User' }); tree.insert({ name: 'Bill', age: 11, type: 'User' }); tree.insert({ name: 'Angel', age: 21, type: 'User' }); tree.insert({ name: 'Bill', age: 50, type: 'Staff' }); tree.insert({ name: 'Angel', age: 12, type: 'User' }); tree.insert({ name: 'Angel', age: 50, type: 'Staff' }); tree.insert({ name: 'Angel', age: 82, type: 'Staff' }); tree.insert({ name: 'Angel', age: 82, type: 'Staff' }); tree.insert({ name: 'Angel', age: 82, type: 'User' }); console.log(tree.inOrder()); // Generate names and ages /*console.time('Generate ' + countMax + ' records'); while (count--) { name = names[Math.floor(Math.random() * names.length)]; data.push({ name: name, age: Math.ceil(Math.random() * 100), cash: Math.ceil(Math.random() * 1000) }); } //console.log(data); console.timeEnd('Generate ' + countMax + ' records'); console.time('Insert ' + countMax + ' records'); debugger; console.log(tree.insert(data)); console.timeEnd('Insert ' + countMax + ' records'); console.time('Walk tree in order'); console.log(tree.inOrder()); console.timeEnd('Walk tree in order'); console.time('Query tree single key'); console.log(tree.lookup({name: 'Jim'})); console.timeEnd('Query tree single key'); console.time('Query tree multi key'); console.log(tree.lookup({name: 'Jim', age: 12})); console.timeEnd('Query tree multi key');*/ </script> </body> </html>