【发布时间】:2012-08-16 10:34:41
【问题描述】:
我正在从数据属性创建以下数组,我需要能够从中获取最高和最低值,以便稍后将其传递给另一个函数。
var allProducts = $(products).children("li");
prices = []
$(allProducts).each(function () {
var price = parseFloat($(this).data('price'));
prices[price] = price;
});
console.log(prices[0]) <!-- this returns undefined
我的列表项是这样的(为了便于阅读,我已经删减了):
<li data-price="29.97"><a href="#">Product</a></li>
<li data-price="31.00"><a href="#">Product</a></li>
<li data-price="19.38"><a href="#">Product</a></li>
<li data-price="20.00"><a href="#">Product</a></li>
价格上的快速 console.log 向我显示了我的数组,该数组似乎已排序,因此我可以获取我假设的第一个和最后一个元素,但目前数组中的名称和值是相同的,所以每当我尝试执行价格[0],我得到 undefined
[]
19.38 19.38
20.00 20.00
29.97 29.97
31.00 31.00
感觉这是一个非常简单的问题,所以请善待:)
【问题讨论】:
-
不应该是
prices[price]是prices.push()以便使用键 [0],[1]...? -
你可能有多少个价格?
标签: javascript jquery arrays position