【问题标题】:Javascript object - how to properly acces to item and sort themJavascript 对象 - 如何正确访问项目并对它们进行排序
【发布时间】:2014-02-05 01:21:27
【问题描述】:

我在 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>");
}

但我对 price_unit 的尝试:

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

返回未定义。什么是正确的方法?

我还想知道如何首先按其键对这些列表进行排序。我很想知道如何对它们进行排序,以便它们的键按以下顺序出现在列表中:“1/1、1/3、1/10、6/1、6/3、6/10 ...”等

您可以在这里查看和编辑我的 jsfiddle:http://jsfiddle.net/vX9Va/1/

【问题讨论】:

  • PRICES[ key ].price_unit

标签: javascript list object


【解决方案1】:
for (var key in PRICES) {
    $("ul.second").append("<li>"+ PRICES[key].price_unit +"</li>");
}

这是一个如何进行排序的示例:http://jsfiddle.net/2wj8L/

【讨论】:

  • 就这么简单?谢谢...只是想弄清楚如何以正确的方式对它们进行排序...我会尽快接受您的回答
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-21
  • 2017-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-05
相关资源
最近更新 更多