@ivujs/i-utils
Version:
前端模块化 JavaScript 工具库
210 lines (209 loc) • 6.85 kB
TypeScript
/**
* 数组最小值
* @param {Array} array 数组
* @returns {number} 返回最小值
*/
export declare function arrayMin(array: any[]): number;
/**
* 数组最大值
* @param {array} array 数组
* @returns {number} 返回最大值
*/
export declare function arrayMax(array: any[]): number;
/**
* 数组求和
* @param {Array} array 数组
* @returns {number} 返回和
*/
export declare function arraySum(array: any[]): number;
/**
* 数组求平均值
* @param {Array} array 数组
* @returns {number} 返回平均数
*/
export declare function arrayAvg(array: any[]): number;
/**
* 数组中是否包含指定的元素
* @param {string|number} value 元素
* @param {Array} array 查找的数组
* @returns {boolean} 返回结果
*/
export declare function inArray(value: string | number, array: any[]): boolean;
/**
* 比较两个数组是否相等
* @param {Array} array1 数组1
* @param {Array} array2 数组2
* @returns {boolean} 返回结果
*/
export declare function arrayEquals(array1: any[], array2: any[]): boolean;
/**
* 生成指定长度的数组
* @param {number} length 长度,默认 0
* @returns {Array} 返回数组
*/
export declare function arrayCreate(length?: number): number[];
/**
* 数组指定位置添加元素
* @description 如果数组为空,则在0位置添加元素
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @param {*} value 添加的元素
* @returns {Array} 返回操作后的数组
*/
export declare function arrayInsert(array?: any[], index?: number, value?: any): any[];
/**
* 数组指定位置前面添加元素
* @description 如果数组为空,则在0位置添加元素
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @param {*} value 添加的元素
* @returns {Array} 返回操作后的数组
*/
export declare function arrayInsertBefore(array?: any[], index?: number, value?: any): any[];
/**
* 数组指定位置后面添加元素
* @description 如果数组为空,则在0位置添加元素
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @param {*} value 添加的元素
* @returns {Array} 返回操作后的数组
*/
export declare function arrayInsertAfter(array?: any[], index?: number, value?: any): any[];
/**
* 数组指定位置删除元素
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @returns {Array} 返回操作后的数组
*/
export declare function arrayRemove(array?: any[], index?: number): any[];
/**
* 数组指定位置前面删除元素
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @returns {Array} 返回操作后的数组
*/
export declare function arrayRemoveBefore(array?: any[], index?: number): any[];
/**
* 数组指定位置后面删除元素
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @returns {Array} 返回操作后的数组
*/
export declare function arrayRemoveAfter(array?: any[], index?: number): any[];
/**
* 数组置顶
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @returns {Array} 返回操作后的数组
*/
export declare function arrayTop(array?: any[], index?: number): any[];
/**
* 数组置尾
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @returns {Array} 返回操作后的数组
*/
export declare function arrayBottom(array?: any[], index?: number): any[];
/**
* 数组向上移动
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @returns {Array} 返回操作后的数组
*/
export declare function arrayUp(array?: any[], index?: number): any[];
/**
* 数组向下移动
* @param {Array} array 数组
* @param {number} index 下标位置,默认0
* @returns {Array} 返回操作后的数组
*/
export declare function arrayDown(array?: any[], index?: number): any[];
/**
* 数组交换元素
* @param {Array} array 数组
* @param {number} sourceIndex 原索引
* @param {number} targetIndex 目标索引
* @returns {Array} 返回操作后的数组
*/
export declare function arraySwap(array: any[], sourceIndex: number, targetIndex: number): any[];
/**
* 数组排序
* @param {Array} array 数组
* @param {number} mode 排序模式,参考常量集合中 数组常量,默认是升序
* @returns {Array} 返回操作后的数组
*/
export declare function arraySort(array: any[], mode?: number): any[];
/**
* 数组属性混合排序
* @description 排序默认为asc升序
* @param {Array} array 数组
* @param {Array} props 排序的属性
* @returns {Array} 返回操作后的数组
*/
export declare function arraySortBy(array: any[], props: any[]): any[];
/**
* 数组元素去重
* @param {Array} array 数组
* @returns {Array} 返回操作后的数组
*/
export declare function arrayUnique(array: any[]): any[];
/**
* 数组打乱元素
* @description 可以适用于一些抽奖人员列表打乱顺序
* @param {Array} array 数组
* @returns {Array} 返回操作后的数组
*/
export declare function arrayShuffle(array: any[]): any[];
/**
* 普通数组转树形结构
* @description 包含id和pid属性关系的一维数组,转为children的树形结构
* @param {Array} array 数组
* @param {Object} setting 配置项
* @returns {Array} 返回树形节点
*/
export declare function arrayToTree(array: any[], setting?: {
key: string;
parentKey: string;
childrenKey: string;
}): any[];
/**
* 树形结构转普通数组
* @param {Array} nodes 树形节点
* @param {Object} setting 配置项
* @returns {Array} 返回普通数组
*/
export declare function treeToArray(nodes: any[], setting?: {
childrenKey: string;
}): any[];
/**
* 数组求并集
* @description 数组1 和 数组2 合并一起的元素集合
* @param {Array} array1 数组1
* @param {Array} array2 数组2
* @returns {Array} 返回数组
*/
export declare function arrayUnion(array1: any[], array2: any[]): any[];
/**
* 数组求交集
* @description 数组1 和 数组2 相同的元素集合
* @param {Array} array1 数组1
* @param {Array} array2 数组2
* @returns {Array} 返回数组
*/
export declare function arrayIntersect(array1: any[], array2: any[]): any[];
/**
* 数组求差集
* @description 数组1 中不包含 数组2 的元素集合
* @param {Array} array1 数组1
* @param {Array} array2 数组2
* @returns {Array} 返回数组
*/
export declare function arrayDifference(array1: any[], array2: any[]): any[];
/**
* 数组求补集
* @description 数组1 和 数组2 不相同的元素集合
* @param {Array} array1 数组1
* @param {Array} array2 数组2
* @returns {Array} 返回数组
*/
export declare function arrayComplement(array1: any[], array2: any[]): any[];