次のようなJavascriptの配列があります。
var v = new Array("a","b","c","d","e","f"...);
私はそれを逆にしたいのですが、最初の2つの要素を保持したいので、次のようになります:
"a","b",...."f","e","d","c"
これどうやってするの?
次のようなJavascriptの配列があります。
var v = new Array("a","b","c","d","e","f"...);
私はそれを逆にしたいのですが、最初の2つの要素を保持したいので、次のようになります:
"a","b",...."f","e","d","c"
これどうやってするの?
v = [].concat( v.slice(0,2), v.slice(2).reverse());
//v --> ["a", "b", "f", "e", "d", "c"]
function reverseArrayFromThirdElement(array, copy) {
var arrayCopy = copy ? array.concat() : array;
return [array[0], array[1]].concat(
(arrayCopy.splice(0, 2), arrayCopy.reverse())
);
}
アレイをスライスから安全に保つかどうかを選択できます。配列を内部的にコピーする場合は、true として渡しcopy
ます。