2016-06-20 54 views
0

您好我得跟隨對象:Exchange項目瓦爾

 myList = { 
      Items: [ 
       { 
        ID: 1, 
        Name: "last" 
       }, 
       { 
        ID: 2, 
        Name: "before last" 
       }, 
       { 
        ID: 3, 
        Name: "second" 
       }, 
       { 
        ID: 4, 
        Name: "first" 
       } 
      ] 
     }; 

在我的數組的順序現在是:1,2,3和4

現在,我想用第一個(ID == 1)和ID爲3的項目與第二個(ID == 2)交換具有ID == 4的項目。有沒有辦法做到這一點沒有一些臨時變量?所以我可能會說,將ID == 4的項放在第一個索引上,另一個會自動向下移動,不會被覆蓋?如果沒有任何臨時變量,我應該如何用這種臨時變量做到最好?

感謝和歡呼聲

+0

只需扭轉陣列,Y ou想要從1,2,3,4的訂單像4,3,2,1 – C2486

+0

@Rishi我怎麼能扭轉它? – MrBuggy

+0

@Rishi我發現它,myList.Items.reverse() - 感謝和歡呼。 – MrBuggy

回答

3

myList = { 
 
      Items: [ 
 
       { 
 
        ID: 1, 
 
        Name: "last" 
 
       }, 
 
       { 
 
        ID: 2, 
 
        Name: "before last" 
 
       }, 
 
       { 
 
        ID: 3, 
 
        Name: "second" 
 
       }, 
 
       { 
 
        ID: 4, 
 
        Name: "first" 
 
       } 
 
      ] 
 
     }; 
 
console.log(myList); 
 

 
myList = {Items: myList.Items.reverse()}; 
 

 
console.log(myList);

+0

完美,謝謝! – MrBuggy

2

你可以使用一個新的數組中的元素,你想兌換。

myList.Items = [myList.Items[3], myList.Items[2], myList.Items[1], myList.Items[0]]; 

或者使用Array#reverse

reverse()方法反轉到位陣列。第一個數組元素變成最後一個,最後一個變成第一個。

myList.Items.reverse(); 
1

嘗試此

myList.Items = myList.Items.reverse(); 

<ul ng-repeat="item in myList.Items | orderBy:'ID':reverse"> 
相關問題