如何从数组中获取下一个N元素?

NiL*_*iLL 1 javascript

需要一个从给定数组返回N个元素的函数,给定偏移量,但是当偏移量大于数组长度时,它必须返回数组开头的元素.

接口:
slice2(array, chunk, offset);

例子:

var array = [1,2,3,4,5];
slice2(array,2,2)产出:[3,4]
slice2(array,2,4)产出:[5,1]
slice2(array,3,4)产出:[5,1,2]

And*_*rei 8

function slice2(array, chunk, offset) {
    var subarray = [];
    for (var i = 0; i<chunk; i++) {
        var ind = (offset + i) % array.length;
        subarray.push(array[ind]);
    }

    return subarray;
}
Run Code Online (Sandbox Code Playgroud)