Sym - 一个用 Java 实现的现代化社区平台 • 源码 • 注册

Pipe - 小而美的开源博客平台 • 体验 • 皮肤
Solo - 一个用 Java 实现的博客系统,为你或你的团队创建个博客吧! • 源码下载 
Wide - 一个基于 Web 的 Go 语言 IDE • 教程试用

Array - shank

2019-06-05

描述

Array.prototype.splice() 有着同样的功能,但是需要返回新数组来替代对原始数组的修改。

提示

  • 使用 Array.prototype.slice() 和 Array.prototype.concat() 来获取移除存在的元素并且(或者)添加新元素后的新数组内容。
  • 第二个参数为 index, 默认从 0 开始
  • 第四个元素为 elements,默认不添加新元素

代码

const shank = (arr, index = 0, delCount = 0, ...elements) =>
  arr
    .slice(0, index)
    .concat(elements)
    .concat(arr.slice(index + delCount));

示例

保持原数组不变的情况下,对其进行 splice

const names = ['alpha', 'bravo', 'charlie'];
const namesAndDelta = shank(names, 1, 0, 'delta'); // [ 'alpha', 'delta', 'bravo', 'charlie' ]
const namesNoBravo = shank(names, 1, 1); // [ 'alpha', 'charlie' ]
console.log(names); // ['alpha', 'bravo', 'charlie']

返回总目录

每天 30 秒系列之 JavaScript 代码


欢迎注册黑客派社区,开启你的博客之旅。让学习和分享成为一种习惯!

推荐阅读
留下你的脚步