排序后无法在Javascript对象中添加键值对

时间:2015-10-07 09:31:01

标签: javascript json sorting javascript-objects

嘿,我有一个对象

data = { vaibhavs:243 "132" , 
         vaibhavs:918 "342", 
         karthikp:265 "345",
         marimuthu:848 "asjkd",
         ushas:918 "sdf15",
         apoorvg:728 "wddfs"....
       }

我需要在密钥的基础上对其进行排序,即" vaibhavs:243" alphabatically。 我已经为它编写了以下代码。我能够对键进行排序,但无法将其放回到返回的对象中。请指导做什么。

function sortData(data) {
    var sorted = [];
    Object.keys(data).sort(function (a, b) {
        return a < b ? -1 : 1
    }).forEach(function (key) {
        var obj = {};
        obj[key] = data[key]
        sorted.push(obj);
    });
    return sorted;
}

这给了我一系列我不想要的对象。我想要一个对象。 我无法使用数组执行此操作,因为我需要排序的键值对。

如果我使用以下代码,

function sortData(data) {
        var sorted = {};
        Object.keys(data).sort(function (a, b) {
            return a < b ? -1 : 1
        }).forEach(function (key) {
            sorted[key] = key[data]
        });
        return sorted;
    }

以上代码始终覆盖现有值。有人可以建议我如何添加Key值对。正如我按排序顺序那样,但只是无法将它们添加到单个对象中。

0 个答案:

没有答案