比方說,我有這樣的對象:排序更改/數組對象數據的編輯列表
{
"data": {
"result": [
{
"id": 25,
"lineNo": "222",
"description": "hello"
},
{
"id": 30,
"lineNo": "765",
"description": "hmmm"
},
{
"id": 31,
"lineNo": "112",
"description": "last"
}
]
}
}
,然後我在ID 30從hmmm
改變description
到:
{
"id": 30,
"lineNo": "765",
"description": "should be first"
},
,將成爲像這樣:
{
"data": {
"result": [
{
"id": 25,
"lineNo": "222",
"description": "hello"
},
{
"id": 30,
"lineNo": "765",
"description": "should be first"
},
{
"id": 31,
"lineNo": "112",
"description": "last"
}
]
}
}
我的問題是,如何在編輯後更改/排序 物體?我想在這樣的頂部最近編輯的對象:
{
"data": {
"result": [
{
"id": 30,
"lineNo": "765",
"description": "should be first"
},
{
"id": 25,
"lineNo": "222",
"description": "hello"
},
{
"id": 31,
"lineNo": "112",
"description": "last"
}
]
}
}
我也使用Lodash庫,如果有人知道與lodash或原生請參考我給它的任何實例。提前致謝。
這很有趣。一個提示,'array.prototype.every'會讓你開始。 – Mouser
@Mouser,more ['forEach'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach) –
您需要跟蹤更改的對象。如果您有控制權來更改將執行這些更改的代碼,或者可以在其中放置一個鉤子,那麼您只需要保留一個隊列中的對象更改,然後使用一種簡單的算法來更改項目,然後將數組中剩餘的所有項目該訂單。但是,如果您無法控制何時發生這些更改,則可能需要使用Object.observe。 –