从顶部Javascript添加新项目和切片

时间:2016-06-27 12:03:20

标签: javascript

我有一个包含以下项目的列表:

var values = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, ...]; 

我希望,对于每个卷轴,添加第15个新项目,然后从顶部切换另外的第15个元素 你能帮助我吗?感谢!!!

更新:

getMoreItems(items: any) {
        var lastIndex: number;
        if (items.visible.length) {
            var lastItem: any = _.last(items.visible);
            lastIndex = _.findLastIndex(items.allValues, { Name: lastItem.Name });
        }
        var startIndex = lastIndex + 1 || 0;
        var endIndex = Math.min(startIndex + 15, items.allValues.length);
        var newItems = items.allValues.slice(startIndex, endIndex);


        if (items.visible.length > 30) {
            items.visible = items.visible.slice(0, 15).concat(newItems);
        } else {
            items.visible = items.visible.concat(newItems);
        }
    }

3 个答案:

答案 0 :(得分:0)

这样的东西?

var numbers = [1,2,3,4,5,6,7,8,9,10];
numbers = numbers.slice(2).concat([11,12]);
console.log(numbers);

>> [ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ]

答案 1 :(得分:0)

如果你有滚动数组,你可以重新初始化你的数组:

var old= [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; 

scroll=[32, 232,23, 232, 23, 232, 23,238, 92, 120];

old=scroll;

console.log(old);

如果您逐个使用项目,那么您可以使用模式:

如果你有滚动数组,你可以重新初始化你的数组:

var old= [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; 

old.push(next_value);
old.shift()

console.log(old);

答案 2 :(得分:0)

var values = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, ...];
values = values.splice(0,15); // remove first 15 items
values = values.concat([another 15 items]); // add next 15

当然,你可以内联这个:

values = values.splice(0,15).concat([x1...x2])