从数组中排除指定的索引或索引范围,返回一个新的数组。
omitRange
函数签名
typescript
function omitRange<T>(arr: T[], range: number | [number, number]): T[]描述
从数组中排除指定的索引或索引范围,返回一个新的数组。
类型参数
| 参数名 | 约束 | 默认值 | 描述 |
|---|---|---|---|
T | - | - | - 数组元素类型。 |
参数
| 参数名 | 类型 | 可选 | 默认值 | 描述 |
|---|---|---|---|---|
arr | T\[\] | 否 | - | - |
range | number | \[number, number\] | 否 | - | - |
返回值
T\[\]
示例
typescript
omitRange([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [2, 4]) // [1, 2, 6, 7, 8, 9, 10]typescript
omitRange([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 2) // [1, 2, 4, 5, 6, 7, 8, 9, 10]typescript
omitRange(['a', 'b', 'c', 'd', 'e'], [1, 3]) // ['a', 'e']点击查看源码
js
/**
* 从数组中排除指定的索引或索引范围,返回一个新的数组。
*
* @type {<T>(arr: T[], range: number | [number, number]) => T[]}
* @param {T[]} arr - 要处理的数组。
* @param {number | [number, number]} range - 要排除的单个索引或索引范围数组。
* @returns {T[]} 排除指定索引或索引范围内元素后的新数组。
* @template T - 数组元素类型。
* @example
* omitRange([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [2, 4]) // [1, 2, 6, 7, 8, 9, 10]
* @example
* omitRange([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 2) // [1, 2, 4, 5, 6, 7, 8, 9, 10]
* @example
* omitRange(['a', 'b', 'c', 'd', 'e'], [1, 3]) // ['a', 'e']
*/
export function omitRange(arr, range) {
const _range = typeof range === "number" ? [range, range] : range;
const [start, end] = _range;
return arr.filter((_, index) => index < start || index > end);
}ts
/**
* 从数组中排除指定的索引或索引范围,返回一个新的数组。
*
* @type {<T>(arr: T[], range: number | [number, number]) => T[]}
* @param {T[]} arr - 要处理的数组。
* @param {number | [number, number]} range - 要排除的单个索引或索引范围数组。
* @returns {T[]} 排除指定索引或索引范围内元素后的新数组。
* @template T - 数组元素类型。
* @example
* omitRange([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [2, 4]) // [1, 2, 6, 7, 8, 9, 10]
* @example
* omitRange([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 2) // [1, 2, 4, 5, 6, 7, 8, 9, 10]
* @example
* omitRange(['a', 'b', 'c', 'd', 'e'], [1, 3]) // ['a', 'e']
*/
export function omitRange<T>(arr: T[], range: number | [number, number]): T[] {
const _range = typeof range === "number" ? [range, range] : range;
const [start, end] = _range;
return arr.filter((_, index) => index < start || index > end);
}如有错误,请提交issue :::