我有一個json數組和其他排序的數組。現在我想根據排序數組項排序json數組。基於另一個數組排序json數據
var checkedIds =["2","1","4"];//sort order array
//json array
var jsonData1= {
"ProductImages": [
{ "checkBoxField": false, "itemId": 1, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 2, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 3, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 4, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 5, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 6, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 7, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 8,"rateValue":"$34" }
]
};
輸出應該
var jsonData1= {
"ProductImages": [
{ "checkBoxField": true, "itemId": 2, "rateValue":"$34" },
{ "checkBoxField": true, "itemId": 1, "rateValue":"$34" },
{ "checkBoxField": true, "itemId": 4, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 3, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 5, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 6, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 7, "rateValue":"$34" },
{ "checkBoxField": false, "itemId": 8,"rateValue":"$34" }
]
};
你嘗試過什麼?另外,爲什麼你將數字作爲字符串存儲在'checkedIds'中? – 4castle
你到目前爲止嘗試過什麼?應該如何對不屬於'checkedIds'數組的部分進行排序? – Timo
我覺得有一個更好的方法來解決你要做的事情,而不是做這件事。請參閱[什麼是XY問題?](http://meta.stackexchange.com/a/66378)。爲什麼不讓'ProductImages'成爲一個對象,並讓'itemId'成爲關鍵?您可以在需要時使用'checkedIds'來引用密鑰。 – 4castle