我需要在数组的开头添加或预加元素。
例如,如果我的数组如下所示:
[23, 45, 12, 67]
AJAX调用的响应是34,我希望更新后的数组如下所示:
[34, 23, 45, 12, 67]
目前我计划这样做:
var newArray = [];
newArray.push(response);
for (var i = 0; i < theArray.length; i++) {
newArray.push(theArray[i]);
}
theArray = newArray;
delete newArray;
有更好的方法吗?JavaScript是否有任何内置功能来实现这一点?
我的方法的复杂性是O(n),看到更好的实现会非常有趣。
在数组中准备新元素的Cheatsheet
1.阵列#未移位
常量列表=[23,45,12,67];list.unshift(34);console.log(列表);//[34, 23, 45, 12, 67];
2.阵列#拼接
常量列表=[23,45,12,67];列表.拼接(0,0,34);console.log(列表);//[34, 23, 45, 12, 67];
3.ES6扩散。。。
常量列表=[23,45,12,67];常量newList=[34,…list];console.log(newList);//[34, 23, 45, 12, 67];
4.数组#concat
常量列表=[23,45,12,67];常量newList=[32].contat(列表);console.log(newList);//[34, 23, 45, 12, 67];
注意:在每个示例中,您都可以通过提供更多要插入的项目来准备多个项目。