0
創建平分類對象我有一個數組:使用Javascript - 從對象
var maxSpeed = {car:300, bike:60, motorbike:200, airplane:1000, helicopter:400, rocket:8*60*60}
我想對它進行排序並轉換爲平面物體將看起來完全一樣上面的陣列。不幸的是排序和創建對象後,我得到多維對象:
var sortable = [];
for (var vehicle in maxSpeed)
sortable.push([vehicle, maxSpeed[vehicle]])
sortable.sort(function(a, b) {return a[1] - b[1]});
function toObject(sortable) {
var rv = {};
for (var i = 0; i < sortable.length; ++i)
rv[i] = sortable[i];
return rv;
}
檢查console.logs,一個嵌套在另外一個是沒有的。我想我必須修改rv [i] = sortable [i]行,但我不確定如何?
這就是我現在得到:
Object
0: Array[2]
1: Array[2]
2: Array[2]
3: Array[2]
4: Array[2]
5: Array[2]
__proto__: Object
而且我要得到什麼:
Object
airplane: 1000
bike: 60
car: 300
helicopter: 400
motorbike: 200
rocket: 28800
__proto__: Object
的jsfiddle:
對不起,'maxSpeed'不是_Array_,而是_Object_ –
對象內部使用散列算法來存儲密鑰。所以我們不能明確地命令它們。 – thefourtheye
@PaulS。這是'PHP' devs在JavaScript中的一個常見錯誤' – baldrs