javascript:将一个对象取消提升到一个对象数组中



我有一个对象,需要插入到对象数组的前面(第一个索引(

const static_stat = {id: null, name: 'UNASSIGNED'};
api_data = [{id:.., name:..},{id:.., name:..},{id:.., name:..}];

我已经尝试过使用unshift,我想要的是实现下面的结果,但它给了我数组的长度。

[{id:null, name: 'UNASSIGNED'},{id:.., name:..},{id:.., name:..},{id:.., name:..}]

Array#unshift变异数组并返回数组的新长度。


要获得新阵列,可以使用Array#concat

return [static_stat].concat(api_data);

或者采用具有展开项目的新阵列。

return [static_stat, ...api_data];
是的,你说得对。unshift()方法将一个或多个元素添加到数组的开头,并返回数组的新长度。但是在使用unshift()之后,您的原始数组api_data已经更新。只需在上面使用console.log(api_data)即可查看更新后的数组,其中包含新的static_stat对象,如:

const static_stat = {id: null, name: 'UNASSIGNED'};
let api_data = [{id: 1, name: 'Jhon'}];
console.log(api_data.unshift(static_stat));
console.log(api_data);
.as-console-wrapper { max-height: 100% !important; top: 0; }

最新更新