我有这样的_assignedTripData Array元素。
0: {id: 100959872, cityCode: "PHX", airportID: "PHX", local: 0, guestID: 0, …}
1: {id: 100952759, cityCode: "PHX", airportID: "PHX", local: 0, guestID: 0, …}
2: {id: 100952761, cityCode: "PHX", airportID: "PHX", local: 0, guestID: 0, …}
3: {id: 100952766, cityCode: "PHX", airportID: "PHX", local: 0, guestID: 0, …}
但是当我使用_assignedTripData.splice(0,1)在0位置拼接元素并存储到var newArray = new Array();中时之后,我想使用_assignedTripData.splice(0,0,newArray)在相同位置插入相同记录,最终输出将是
只看数组的0索引是对象为什么?
0: [{…}]
1: {id: 100952759, cityCode: "PHX", airportID: "PHX", local: 0, guestID: 0, …}
2: {id: 100952761, cityCode: "PHX", airportID: "PHX", local: 0, guestID: 0, …}
3: {id: 100952766, cityCode: "PHX", airportID: "PHX", local: 0, guestID: 0, …}
在0位置添加数组对象是因为在我将_assignedTripData数据绑定到tboday的第一条记录未定义显示时添加了对象。
我的问题是如何在“ x”位置删除数组并将其添加到同一位置,以使数组对象结构不变。回复任何建议。
我是Jquery的新手。
最佳答案
从docs,Array.splice返回
包含已删除元素的数组。如果仅删除一个元素,则返回一个元素的数组。如果没有删除任何元素,则返回一个空数组。
因此,您需要使用Spread Syntax来获得所需的结果。
let arr = [1,2];
let v = arr.splice(0,1);
arr.splice(0,0, ...v);
console.log(arr);