繁体   English   中英

在 JavaScript 中推送新对象并弹出对象数组的第一个对象

[英]Pushing new object and popping the first object of an Array of Objects in JavaScript

我正在尝试创建一个始终长度为 5 的对象数组,因此首先推送五个对象,当数组的长度达到 5 时,然后弹出第一个对象并将新对象推送到同一个数组上。 并且这个操作会在一定的时间间隔(5秒的间隔)内继续进行。

var arr = [{
        name: 'ABC', // Pop the first object when new object is push ..
    }, {
        name: 'ABC',
    }, {
        name: 'ABC',
    }, {
        name: 'ABC',
    }, {
        name: 'ABC',
}];

arr.push({ name: 'ABCNew'});

这可能吗? 伙计们,请指导我如何实现此功能?

我将不胜感激,非常感谢!

尝试这个

 const add = (arr, ele) => [ele, ...arr].slice(0,5); console.log(add([1,2,3], 6)) console.log(add([1,2,3,4,5], 6)) console.log(add([{ name: 'ABC' }, { name: 'ABC', }, { name: 'ABC', }, { name: 'ABC', }, { name: 'ABC', }], { name: 'ABCNew'}))

我猜你需要一个函数来检查数组的长度并根据长度推送和删除对象

var arr = [];
function pusher(obj){
   arr.push(obj);
   if(arr.length > 5){
       arr.shift();
   }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM