2014-01-16 67 views
0

我在javascript中有一個對象,它有一個屬性列表。它看起來像這樣:Javascript對象 - 如何正確訪問項目並對它們進行排序

var PRICES = {}; 

PRICES["1/1"] = { "price_unit" : "0 €", "price_total": "0 €", "price_total_vat" : "0 €" }; 
PRICES["6/1"] = { "price_unit" : "50,00 €", "price_total": "300,00 €", "price_total_vat" : "357,00 €" }; 
PRICES["12/1"] = { "price_unit" : "40,00 €", "price_total": "480,00 €", "price_total_vat" : "571,20 €" }; 
PRICES["24/1"] = { "price_unit" : "33,00 €", "price_total": "792,00 €", "price_total_vat" : "942,48 €" }; 
PRICES["1/3"] = { "price_unit" : "94,99 €", "price_total": "284,97 €", "price_total_vat" : "339,11 €" }; 
PRICES["6/3"] = { "price_unit" : "47,50 €", "price_total": "855,00 €", "price_total_vat" : "1.017,45 €" }; 
PRICES["12/3"] = { "price_unit" : "38,00 €", "price_total": "1.368,00 €", "price_total_vat" : "1.627,92 €" }; 
PRICES["24/3"] = { "price_unit" : "31,35 €", "price_total": "2.257,20 €", "price_total_vat" : "2.686,07 €" }; 
PRICES["1/10"] = { "price_unit" : "90,24 €", "price_total": "902,40 €", "price_total_vat" : "1.073,86 €" }; 
PRICES["6/10"] = { "price_unit" : "45,12 €", "price_total": "2.707,20 €", "price_total_vat" : "3.221,57 €" }; 
PRICES["12/10"] = { "price_unit" : "36,10 €", "price_total": "4.332,00 €", "price_total_vat" : "5.155,08 €" }; 
PRICES["24/10"] = { "price_unit" : "29,78 €", "price_total": "7.147,20 €", "price_total_vat" : "8.505,17 €" }; 
PRICES["1/50"] = { "price_unit" : "85,73 €", "price_total": "4.286,50 €", "price_total_vat" : "5.100,94 €" }; 
PRICES["6/50"] = { "price_unit" : "42,86 €", "price_total": "12.858,00 €", "price_total_vat" : "15.301,02 €" }; 
PRICES["12/50"] = { "price_unit" : "34,29 €", "price_total": "20.574,00 €", "price_total_vat" : "24.483,06 €" }; 

我試圖訪問的第一個項目中的每個稱爲price_unit名單,但我不知道該怎麼做。我通過了對象的鍵:

for (var key in PRICES) { 
    $("ul.first").append("<li>"+ key +"</li>"); 
} 

但我的拉昇價格單位:

for (var key in PRICES) { 
    $("ul.second").append("<li>"+ PRICES.price_unit +"</li>"); 
} 

返回undefined。什麼是正確的方法?

另外我想知道如何按鍵排序這些列表。我很樂意如何對它們進行排序,以便它們的按鍵按照以下順序出現在列表中:「1/1,1/3,1/10,6/1,6/3,6/10 ...」等。

你可以看到,在這裏編輯我的jsfiddle:http://jsfiddle.net/vX9Va/1/

+0

'價格[關鍵] .price_unit' – pawel

回答

1
for (var key in PRICES) { 
    $("ul.second").append("<li>"+ PRICES[key].price_unit +"</li>"); 
} 

下面是一個例子,如何來進行排序:http://jsfiddle.net/2wj8L/

+0

就這麼簡單?謝謝......只是想弄清楚如何以適當的方式對它們進行排序......我會盡快接受你的回答 – dzordz

相關問題