Lodash:没有最后一个元素的数组,没有突变

Lodash: Array without last element, no mutation

我正在寻找一种方法来检索没有最后一个元素且不发生突变的数组。

我有 _.filter(array, function(el, i) { return i != array.length -1}); 但是 siouf,不是很明确,它需要数组存储在某个地方。

谢谢

试试这个:

_.take(arr, arr.length-1)

我一直在寻找类似 "butlast" 的东西,但我找到了 initial,它可以完成工作:

var xs = [1, 2, 3, 4];

var xs2 = _.initial(xs);

console.log(xs, xs2);  // [1, 2, 3, 4] [1, 2, 3]

Array.prototype.slice 可能对您有帮助。

var array = [1,2,3,4,5];
var newArr = array.slice(0, -1);

console.log(array); // [1, 2, 3, 4, 5]
console.log(newArr); // [1, 2, 3, 4]

当然你也可以用lodash

谢谢