我正在从数据属性创建以下数组,我需要能够从中获取最高值和最低值,以便稍后将其传递给另一个函数。
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
感觉这是一个简单到愚蠢的问题,所以请善待 :)
最佳答案
要获取数组中的最小值/最大值,您可以使用:
var _array = [1,3,2];
Math.max.apply(Math,_array); // 3
Math.min.apply(Math,_array); // 1
关于javascript - 从 JavaScript 中的数组中获取最大值和最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11985341/