Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Lodash:没有最后一个元素的数组,没有变异_Javascript_Immutability_Lodash - Fatal编程技术网

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

Javascript Lodash:没有最后一个元素的数组,没有变异,javascript,immutability,lodash,Javascript,Immutability,Lodash,我正在寻找一种不用最后一个元素也不用变异的方法来检索数组 \删除会改变数组,并按值而不是索引进行搜索(即使它是) \无按值搜索,不按索引搜索 我有.filter(数组,函数(el,I){returni!=array.length-1})但siouf并不是真正明确的,它需要将数组存储在某个地方 谢谢试试这个: _.take(arr, arr.length-1) 我在寻找类似“butlast”的东西,但我找到了initial,它可以完成以下任务: var xs = [1, 2, 3, 4];

我正在寻找一种不用最后一个元素也不用变异的方法来检索数组

  • \删除
    会改变数组,并按值而不是索引进行搜索(即使它是)
  • \无
    按值搜索,不按索引搜索
我有
.filter(数组,函数(el,I){returni!=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]
也许对你有帮助

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


谢谢

阵列切片对您不起作用吗?arr.slice([begin[,end]])。这将创建一个浅拷贝,并且您可以使用-1作为结束。很好的捕获。虽然
\uu0.initial
更适合我的需要。