Skip to main content
Module

x/ramda/pickAll.js

:ram: Practical functional Javascript
Go to Latest
File
import _curry2 from './internal/_curry2';

/** * Similar to `pick` except that this one includes a `key: undefined` pair for * properties that don't exist. * * @func * @memberOf R * @since v0.1.0 * @category Object * @sig [k] -> {k: v} -> {k: v} * @param {Array} names an array of String property names to copy onto a new object * @param {Object} obj The object to copy from * @return {Object} A new object with only properties from `names` on it. * @see R.pick * @example * * R.pickAll(['a', 'd'], {a: 1, b: 2, c: 3, d: 4}); //=> {a: 1, d: 4} * R.pickAll(['a', 'e', 'f'], {a: 1, b: 2, c: 3, d: 4}); //=> {a: 1, e: undefined, f: undefined} */var pickAll = _curry2(function pickAll(names, obj) { var result = {}; var idx = 0; var len = names.length; while (idx < len) { var name = names[idx]; result[name] = obj[name]; idx += 1; } return result;});export default pickAll;