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

2022-08-29 21:45:55

我正在寻找一个JavaScript数组插入方法,风格如下:

arr.insert(index, item)

最好在jQuery中,但是任何JavaScript实现都可以在这一点上使用。


答案 1

您希望在本机数组对象上使用拼接函数。

arr.splice(index, 0, item);将插入到指定的位置(首先删除项目,即它只是一个插入)。itemarrindex0

在此示例中,我们将创建一个数组,并向其添加一个元素到索引 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

答案 2

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

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

然后,您可以像这样使用它:

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

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