向数组指定位置添加内容
/**
* 向数组指定位置添加内容
* @param { Array } arr 原数组
* @param {*} data 要添加的内容
* @param { Number } index 需要添加的位置
* @returns
*/
function addData(arr, data, index) {
if (index === -1 || index > arr.length) {
console.log('请输入正确的下标');
return false
}
if (index === arr.length) {
return [...arr, data]
}
let left_arr = arr.slice(0, index);
let right_arr = arr.slice(index);
return [...left_arr, data, ...right_arr]
}
示例
let arr = [
{
id: 1 },
{
id: 2 },
{
id: 3 },
{
id: 4 },
{
id: 6 },
]
console.log(addData(arr, {
id: 5 }, 4)); // [ { id: 1 }, { id: 2 }, { id: 3 }, { id: 4 }, { id: 5 }, { id: 6 } ]