如何将项目插入到特定索引处的数组中(JavaScript)

新手上路,请多包涵

我正在寻找一种 JavaScript 数组插入方法,其样式为:

arr.insert(index, item)

最好在 jQuery 中,但此时任何 JavaScript 实现都可以。

原文由 tags2k 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 489
2 个回答

您希望在本机数组对象上使用 splice 功能。

arr.splice(index, 0, item); 会将 item 插入到 arr 中指定 index 处(先删除 0 个item,也就是只是插入)。

在此示例中,我们将创建一个数组并将一个元素添加到索引 2 中:

 var arr = [];
 arr[0] = "Jani";
 arr[1] = "Hege";
 arr[2] = "Stale";
 arr[3] = "Kai Jim";
 arr[4] = "Borge";

 console.log(arr.join()); // Jani,Hege,Stale,Kai Jim,Borge
 arr.splice(2, 0, "Lene");
 console.log(arr.join()); // Jani,Hege,Lene,Stale,Kai Jim,Borge

原文由 tvanfosson 发布,翻译遵循 CC BY-SA 4.0 许可协议

您可以通过执行以下操作来实现 Array.insert 方法:

 Array.prototype.insert = function ( index, ...items ) {
    this.splice( index, 0, ...items );
};

然后你可以像这样使用它:

 var arr = [ 'A', 'B', 'E' ];
arr.insert(2, 'C', 'D');

// => arr == [ 'A', 'B', 'C', 'D', 'E' ]

原文由 FrEsC 81 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题