2016-04-01 3 views
1

最後の要素がなく、突然変異していない配列を取得する方法を探しています。Lodash:最後の要素を持たない配列、突然変異なし

  • _.removeは、ないインデックス値で(それがasked thereであっても)
  • _.without検索を値ではありません、インデックスによって配列と検索を変異し

私は_.filter(array, function(el, i) { return i != array.length -1});しかしsiouf、実際に明示しておらず、どこかに配列を格納する必要があります。

おかげ

+1

はあなたのための配列のスライス動作しませんでそれを行うことができますか? arr.slice([begin [、end]])。これにより、浅いコピーが作成され、最後に-1を使用することもできます。 – 82Tuskers

答えて

3

私は "butlast" のようなものを探していたが、私は仕事をしていませんこれは、initialが見つかりました:

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

var xs2 = _.initial(xs); 

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

はこれを試してみてください:

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

良いキャッチ。 '_.initial'は私の必要性にさらにフィットします。 –

2

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

おかげ

関連する問題