drop 函式
drop函式功能:按順序洗掉陣列元素,當n為正數時,從左洗掉n個元素;當n為負數時,從右洗掉n個元素.;當n為0時,創建一個副本.
drop回傳值:回傳一個新的陣列.
/**
* 創建一個切片陣列,去除array前面的n個元素,(n默認值為1,)
*
* 切片陣列
*
* @param array 待處理陣列
* @param n 洗掉元素個數 正數第左開始 負數從右開始
* @returns 回傳一個新陣列
*
* drop([1, 3, 4, 5, 6, 7])
* // => [1, 3, 4, 5, 6]
*
* drop([1, 3, 4, 5, 6, 7],-1)
* // => [ 3, 4, 5, 6,7]
*/
const drop = <T>(array: Array<T>, n = 1): Array<T> => {
// 克隆
if (!n) return [...array];
// 邊界檢查
if (array.length < 1 || array.length <= n) return [];
// 切片
return array.slice(n > 0 ? n : 0, n > 0 ? array.length : n);
};
export default drop;
例子
import drop from "../src/drop";
const array = [1, 3, 4, 5, 6, 7];
// 從左洗掉 3個元素
const w = drop(array, 3);
console.log(w); //[ 5, 6, 7 ]
// 從右洗掉 3個元素
const w1 = drop(array, -3);
console.log(w1); // [ 1, 3, 4 ]
// 洗掉0個
const w2 = drop(array, 0);
console.log(w2); // [ 1, 3, 4, 5, 6, 7 ]
個人作品
ip定位查詢瀏覽器插件
老虎優惠券瀏覽器插件
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/247554.html
標籤:其他
上一篇:nvm切換node的版本
下一篇:適合小公司生產部門使用的MRP
