UNPKG

mstf-kit

Version:

一个现代化的 JavaScript/TypeScript 工具库,提供了丰富的常用工具函数

38 lines (37 loc) 1.08 kB
/** * 数组相关工具函数 */ /** * 数组去重 * @param arr 要去重的数组 */ export declare function unique<T>(arr: T[]): T[]; /** * 数组分组 * @param arr 要分组的数组 * @param key 分组的键或者获取键的函数 */ export declare function groupBy<T>(arr: T[], key: string | ((item: T) => string)): Record<string, T[]>; /** * 数组扁平化 * @param arr 要扁平化的数组 * @param depth 扁平化深度,默认为 Infinity */ export declare function flatten<T>(arr: any[], depth?: number): T[]; /** * 获取数组中的随机元素 * @param arr 源数组 * @param count 获取元素的数量,默认为 1 */ export declare function sample<T>(arr: T[], count?: number): T | T[]; /** * 数组乱序(Fisher-Yates 洗牌算法) * @param arr 要乱序的数组 */ export declare function shuffle<T>(arr: T[]): T[]; /** * 查找数组中最接近目标值的元素 * @param arr 源数组(必须是已排序的数字数组) * @param target 目标值 */ export declare function closest(arr: number[], target: number): number;