[英]How to prevent default sorting in key value array Javascript
我有這個數組:
recentPageArray = {
"e49f8a67-3075-433a-bacd-30379008fdb2": {
"id": "e49f8a67-3075-433a-bacd-30379008fdb2",
"name": "afolder",
"type": "indexfolder"
},
"3a1ca419-5467-4662-9f7a-f3e9246a1d49": {
"id": "3a1ca419-5467-4662-9f7a-f3e9246a1d49",
"name": "folder1",
"type": "indexfolder"
},
"832f9d4e-297e-40e9-9189-75ce3b86341a": {
"id": "832f9d4e-297e-40e9-9189-75ce3b86341a",
"name": "afolder",
"type": "documentfolder"
},
"86fee1ce-21cd-4948-bf9d-a6c81b897a0e": {
"id": "86fee1ce-21cd-4948-bf9d-a6c81b897a0e",
"name": "afolder",
"type": "documentfolder"
}
}
每當我在此數組中推送新數組時。 鍵自動排序。 我不想在鍵庫中對數組進行排序。 我需要在數組頂部添加新的按鍵項目。
我建議您保留2個引用:1數組(列表)1對象(鍵,值)
Object(key-> val)無法維持元素的插入順序(並且如果某個新的utopic新瀏覽器實現希望以降序排列(出於任何原因),您的代碼將是明智的。
因此,在填充對象的同時,還要按Array中的element鍵。 當您要迭代時,請使用Array進行迭代(而且速度也更快)
myObject = {};
myArray = [];
/** POPULATING **/
for (var x in myData){
myObject[myData[x].key] = myData[x].value;
myArray.push(myData[x].key);
}
/** ITERATING **/
for (var y =0; y < myArray.length; y++){
var readingKey = myArray[y];
var storedData = myObject[readingKey];
//your code here
}
問候
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.