经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » JavaScript » 查看文章
lodash函数库 -- drop函数
来源:cnblogs  作者:破壳而出的蝌蚪  时间:2021/1/11 22:59:45  对本文有异议

drop 函数

drop函数功能:按顺序删除数组元素,当n为正数时,从左删除n个元素;当n为负数时,从右删除n个元素.;当n0时,创建一个副本.
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定位查询浏览器插件
老虎优惠券浏览器插件

原文链接:http://www.cnblogs.com/whnba/p/14264468.html

 友情链接: NPS  问卷模板