如何在JavaScript/React数组的指定位置插入元素
在数组指定位置插入元素的解决办法
你需要用JavaScript数组的splice()方法实现指定位置插入,push()只会把元素加到数组末尾,满足不了你的需求。
具体操作步骤:
- 先定义要插入的新对象:
const newDay = { "num": 45, "value": "45" };
- 使用
splice()方法插入到数组的第二个位置(数组索引从0开始,"All"元素在索引0,所以插入位置是索引1):
days.splice(1, 0, newDay);
splice()参数说明:
- 第一个参数:插入的起始索引(这里传1,代表在原索引1的位置插入,该位置及之后的元素会自动后移)
- 第二个参数:要删除的元素数量(传0,因为我们只做插入操作,不需要删除任何元素)
- 第三个参数:要插入的目标元素(也就是我们定义好的
newDay对象)
完整代码示例:
var days = [ { "num": "All", "value": "-1", }, { "num": 100, "value": "100" }, { "num": 101, "value": "101", }, { "num": 99, "value": "99", }, { "num": "Load More", "value": "Load More", }, ]; // 定义要插入的新元素 const newDay = { "num": 45, "value": "45" }; // 插入到指定位置 days.splice(1, 0, newDay); console.log(days);
执行这段代码后,days数组就会变成你期望的结构,新元素正好位于"All"之后、100之前。
内容的提问来源于stack exchange,提问作者John Ken
相关产品推荐
相关产品推荐

