UNPKG

zetabasejs

Version:

A NoSQL database for quick deployment.

12 lines (11 loc) 528 B
const DataNode = require("../libs/dataStructures/DataNode"); const KEY_PREFIX = DataNode.keyPrefix() class Query { static reduce(obj) { let keys = Object.keys(obj) if (!keys.length) return null if (keys.length === 1 && keys[0].substring(keys[0].length - KEY_PREFIX.length, keys[0].length) !== KEY_PREFIX) return Query.reduce(obj[keys[0]]) return keys.filter(key => key.substring(key.length - KEY_PREFIX.length, key.length) === KEY_PREFIX).map(key => obj[key]) } } module.exports = Query;