簡體   English   中英

在javascript中按給定的鍵值序列對對象進行排序

[英]sort object by given key value sequence in javascript

我有一個數組和一組對象。 無法通過給定的鍵對該對象進行排序。

var a = ['e','a','c','d','b'];
var b = {'d':'12','e':'23','c':'34','b':'45','a':'56'};
var c = {};

for(var i=0; i<a.length; i++){
    for(var j in b){
        if(a[i] == j){
            c[j]=b[j]
        }
    }
}
console.table(c);

在此處輸入圖片說明

這是一個鍵值映射。 保持插入鍵的順序會破壞O(1)插入時間的好處。

為什么要排序? 如果需要,最好維護一組鍵-值對並對其進行排序以備后用。 對你來說

arr = [["orange", 10],["appple", 5], ["banana", 20], ["cherry", 13]];

使用自定義排序功能作為

arr.sort = function(a,b) {
    return a[1]>b[1]? 1:a[1]<b[1]?-1:0;
}

應用排序

keysArr.sort()遍歷已排序的keysArr並使用作為鍵的元素檢索值。

這是您要找的東西嗎?

var a = ['e','a','c','d','b'];
var b = {'d':'12','e':'23','c':'34','b':'45','a':'56'};
var c = {};

a.forEach((val) => {
 c[val] = b[val];
});

console.log(c)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM