mingo
Version:
MongoDB query language for in-memory objects
20 lines (19 loc) • 564 B
JavaScript
import { evalExpr } from "../../../core/_internal";
import { isNil, isObject } from "../../../util";
import { errExpectObject } from "../_internal";
const $objectToArray = (obj, expr, options) => {
const val = evalExpr(obj, expr, options);
if (isNil(val)) return null;
if (!isObject(val))
return errExpectObject(options.failOnError, "$objectToArray");
const keys = Object.keys(val);
const result = new Array(keys.length);
let i = 0;
for (const k of keys) {
result[i++] = { k, v: val[k] };
}
return result;
};
export {
$objectToArray
};