2012-09-06 2 views
2

가능한 중복 :
JavaScript Array rotate()자바 스크립트 객체의 내부 요소를 이동

나는 당신을 위해 까다로운 질문이 있습니다. 나는 다른 값을 가진 객체를 가지고 있으며, 그래서 요소의 색인을 변경하여 첫 번째 요소가 내가 원하는 것의 마지막 또는 3 번째가되도록해야합니다. 자바 스크립트에서 가능합니까 ??

var object = [{0},{1},{2}] 

var object = [{2},{0},{1}] 

에이 내가하고 싶은 것이의 예입니다. 사전에

감사합니다.

+0

당신은 할 수없는이 유효 자바 스크립트 아니므로. 그리고 BTW : 당신은'object' var입니다 배열은 조작 된 객체 리터럴을 포함하고 있습니다. 또한 가능한 예약어를 변수 이름으로 사용하지 마십시오. –

+0

@EliasVanOotegem이 예제 코드는 분명합니다. – thomaux

+0

@Anzeo : 그렇다고해도 대답하기가 너무 어렵습니다. 배열을 정렬 할 수있는 방법은 포함하는 객체가 어떻게 구조화되어 있는지에 따라 다릅니다. , 또는 그가 어떤 유형의 객체의 키를 정렬하는 방법을 찾고 있습니까? –

답변

1

난 당신 말은 가정 : 배열 번호, 객체 또는 무엇이든을 포함하는 경우

var array = [0,1,2]; 

이 정말 중요하지 않습니다. https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array

F.ex, 마지막 하나를 이동 먼저 배치 :

array.unshift(array.pop()); 
이 배열을 수정하려면, 여기에 대한 모든 배열 프로토 타입을 읽을 수있는 자바 스크립트 차가 굴러에서이 작업을 수행하는 방법에는 여러 가지가 있습니다
+0

나는 그것이 내가 원했던 것이었다. 내 자신의 기능을 만들기 위해 귀하의 답변을 사용했습니다. – Simon

3

은 예에 의도를 이해하기 조금 어렵지만,

내 첫 번째 요소는 마지막 아니면 내가

을 원하는대로 세 번째 또는가되고있다 묻는 질문의 몸에 따라배열에서 두 요소를 교환하는 방법을 쓰기

쉽게 충분하다 :

function swapElements(a, x, y){ 
    var temp = a[x]; 
    a[x] = a[y]; 
    a[y] = temp; 
} 

라이브 예 : http://jsfiddle.net/pwY9L/

+0

이것은 유일한 정답입니다 – thomaux

+0

예제에서 OP가 스와핑되지 않습니다. – David

+1

예제가 엉뚱한 데, from과 to 상태 사이에 명백한 상관 관계가 없습니다. 나는 질문의 줄을 따라 가고 있었다. "나의 첫 번째 요소는 마지막 또는 3 번째가되어야한다."* – Jamiec

관련 문제