Javascript 获取对象数组中的最低价格

Javascript 获取对象数组中的最低价格,javascript,jquery,arrays,average,minimum,Javascript,Jquery,Arrays,Average,Minimum,我有一个名为cars的对象数组,其中包含搜索结果列表。在每个列表中都有一个名为数据价格的属性 数组对象示例 <li xmlns="http://www.w3.org/1999/xhtml" id="listing-ECAR-R-EY-MCOO001-EY-MCOO001" data-price="94.03"></li> 您可以将map方法与Math.min和reduce函数结合使用 我使用了reduce方法来找出元素的sum,并通过将sum除以cars数组中的元素数得

我有一个名为
cars
的对象数组,其中包含搜索结果列表。在每个列表中都有一个名为
数据价格
的属性

数组对象示例

<li xmlns="http://www.w3.org/1999/xhtml" id="listing-ECAR-R-EY-MCOO001-EY-MCOO001" data-price="94.03"></li>

您可以将
map
方法与
Math.min
reduce
函数结合使用

我使用了
reduce
方法来找出元素的
sum
,并通过将sum除以
cars
数组中的元素数得到
平均值

reduce()方法对累加器和每个累加器应用一个函数 数组中的元素(从左到右),以将其缩减为单个 价值观

扩展语法的替代方法

let lowestPrice = Math.min.apply(null, prices);

请发布你的数组,而不是jquery对象。你的示例没有用。你们知道我如何打印关于数组的更多信息吗?请参阅:console.log(cars)请参阅:…我不确定为您复制/粘贴整个阵列的最佳方式:/谢谢Mihai!什么是。。。语法?这在旧浏览器上受支持吗?定义“旧浏览器”Hmm出于某种原因,avg返回NaN
undefined+
将执行该操作。@Michael,我用扩展语法的替代方法更新了我的答案。
let prices = cars.map(function(element) {
   return element[0].getAttribute("data-price");
});

let lowestPrice = Math.min(...prices);
let avg = prices.reduce(function(acc, val) { return acc + val; }, 0)/prices.length
let lowestPrice = Math.min.apply(null, prices);