d2-ui
Version:
35 lines (31 loc) • 969 B
JavaScript
/**
*
* @param {Array} array
* @param {string|number} propertyName The property of the
* @returns {Array}
*
* @throws {TypeError} When the `propertyName` can not be found on an item in the `array`. This generally happens when a value in the array is `null` or `undefined`
*
* @example
* const values = [{name: 'John'}, {name: 'James'}];
* arrayPluck(values, 'name') // returns: ['John', 'James']
*
* @example
* const values = [{name: 'John'}, {}, {name: 'James'}];
* arrayPluck(values, 'name') // returns: ['John', undefined, 'James']
*
* @example
* const values = [undefined, {name: 'James'}];
* arrayPluck(values, 'name') // throws: Cannot read property 'name' of undefined
*/
export default function arrayPluck(array, propertyName) {
var newArray = [];
var i;
var len;
var item;
for (i = 0, len = array.length; i < len; i++) {
item = array[i];
newArray.push(item[propertyName]);
}
return newArray;
}