在一个javascript数组中,如何获得最后5个元素,排除第一个元素?

[1, 55, 77, 88] // ...would return [55, 77, 88] 

增加额外的例子:

 [1, 55, 77, 88, 99, 22, 33, 44] // ...would return [88, 99, 22, 33, 44] [1] // ...would return [] 

你可以打电话给:

 arr.slice(Math.max(arr.length - 5, 1)) 

这是我还没有看到的,甚至更短

arr.slice(1).slice(-5)

运行下面的代码片段来certificate它做你想做的事情

 var arr1 = [0, 1, 2, 3, 4, 5, 6, 7], arr2 = [0, 1, 2, 3]; document.body.innerHTML = 'ARRAY 1: ' + arr1.slice(1).slice(-5) + '<br/>ARRAY 2: ' + arr2.slice(1).slice(-5); 

如果您使用的是lodash,则使用takeRight更简单。

_.takeRight(arr, 5);

尝试这个:

 var array = [1, 55, 77, 88, 76, 59]; var array_last_five; array_last_five = array.slice(-5); if (array.length < 6) { array_last_five.shift(); } 
 var y = [1,2,3,4,5,6,7,8,9,10]; y.slice((y.length - 5), y.length)