vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
21 lines (19 loc) • 516 B
JavaScript
import { forOwn, isArray, isObject, sample } from 'lodash-uni';
/**
* 从集合中随机获得一个元素的迭代值。
*
* @param collection 集合
* @param iteratee 迭代函数
*/
export function sampleBy(collection, iteratee) {
if (isArray(collection)) {
return sample(collection.map(iteratee));
} else if (isObject(collection)) {
var values = [];
forOwn(collection, function (v, k) {
return values.push(iteratee(v, k));
});
return sample(values);
}
return undefined;
}