web-dev-qa-db-ja.com

最初と最後を除くすべての配列要素を取得する

場所の配列があります。出発地、中間地点、目的地に個別にアクセスできる必要があります。

私の原点は常に最初の要素であり、宛先は常に最後の要素であることを知っていますが、どのようにしてすべての中間点に動的にアクセスできるかわかりませんか?

11
Vilius

これを実現するには、shift()およびpop()を使用して、それぞれ配列の最初と最後の要素を取得します。これらの操作の後に配列に残っているものはすべて「中間点」になります。これを試して:

var middlePoints = ['start', 'A', 'B', 'C', 'end'];
var Origin = middlePoints.shift();
var destination = middlePoints.pop();

console.log(Origin);
console.log(middlePoints);
console.log(destination);
15
Rory McCrossan

データがないので、表示するために基本的な配列を取っています。また、この方法では、元の配列を保持します。

var arr = [1,2,3,4,5,6,7];
var middle = arr.slice(1, -1);
console.log(middle);

OR

var arr = [1,2,3,4,5,6,7];
var middle = arr.slice(1, arr.length-1);
console.log(middle);
15
Naren Murali

このようなもの?

var allPoints = [0, 1, 2, 3, 4, 5],
    midPoints = []

/*start the iteration at index 1 instead of 0 since we want to skip the first point anyway and stop iteration before the final item in the array*/
for (var i = 1; i < (allPoints.length - 1); i++) {
  midPoints.Push(allPoints[i]);
}

console.log(midPoints);
1
Tom O.