查找表格中的最高编号

时间:2018-10-23 11:44:52

标签: javascript wordpress html-table

我在Wordpress网页上有一张桌子。我想在此表中找到最高,最低和平均价格。问题是价格在带有类的<span>中显示。 (请参阅以下链接上的示例)

http://jsfiddle.net/c69uf1xt/

<tr>
<td>Product 1</td>
<td>01-12-2018</td>
<td class="wpt_price" id="price_value_id_1306" data-price_html="
<del>
<span class=&quot;woocommerce-Price-amount amount&quot;>
<span class=&quot;woocommerce-Price-currencySymbol&quot;>€</span>10.00</span>
</del> 
 <ins>
 <span class=&quot;woocommerce-Price-amount amount&quot;>
  <span class=&quot;woocommerce-Price-currencySymbol&quot;>€</span>7.00</span>
</ins>
 "> 
<span class="wpt_product_price">
<del>
<span class="woocommerce-Price-amount amount">
<span class="woocommerce-Price-currencySymbol">€</span>10.00</span>
</del> 
<ins>
<span class="woocommerce-Price-amount amount">
<span class="woocommerce-Price-currencySymbol">€</span>7.00</span>
</ins></span>
</td>
</tr>
<tr>

有没有办法用Javascript查找这些数字,或者问起来太复杂了?

我希望收到你的来信。

1 个答案:

答案 0 :(得分:0)

首先,将所有价格放入一组浮动货币。这样您可以更轻松地操作数据。

var pricesarray = document.getElementsByTagName("ins");
var prices = [];

for(index = 0;index<pricesarray.length;++index){
    prices.push(parseFloat(pricesarray[index].innerText.replace("€","")));
}

然后获得最高和最低数字

var highest = Math.max.apply(Math,prices ); 
var lowest = Math.min.apply(Math,prices );

对于平均值,我们需要归约并编写一个函数以将数组归约为一个和,然后将其除以数组的长度

var sum = prices.reduce(add, 0);

function add(a, b) {
    return a + b;
}

var average = sum/prices.length;

我们在那里。

> lowest 
4 
> highest 
11 
> average
7.333333333333333