在应用价格折扣后,如何在数组中的文本之间替换为Javascript价格?

在应用价格折扣后,如何在数组中的文本之间替换为Javascript价格?,javascript,Javascript,我有一个3列的表输出。每列包含来自不同客户群(A、B和C组)的价格。价格格式为19.95美元、10.95美元等。我需要将a组的20%、B组的15%和C组的10%应用于输出a,然后替换为保持相同格式的最终价格($price USD) 脚本业务逻辑是加密的,所以我想最好用Javascript解决这个问题。请问,有人能指导我怎么做吗 用于: 价格1 价格2 价格3 10,95美元 10,95美元 10,95美元 输出应为: <table border="1"> <tr>

我有一个3列的表输出。每列包含来自不同客户群(A、B和C组)的价格。价格格式为19.95美元、10.95美元等。我需要将a组的20%、B组的15%和C组的10%应用于输出a,然后替换为保持相同格式的最终价格($price USD)

脚本业务逻辑是加密的,所以我想最好用Javascript解决这个问题。请问,有人能指导我怎么做吗

用于:


价格1
价格2
价格3
10,95美元
10,95美元
10,95美元
输出应为:

<table border="1">
  <tr>
    <th>Price 1</th>
    <th>Price 2</th>
    <th>Price 3</th>
  </tr>
  <tr>
    <td class="price">$8,76 USD</td><!-- 20% discount -->
    <td class="price">$9,30 USD</td><!-- 15% discount -->
    <td class="price">$9,85 USD</td><!-- 10% discount -->
  </tr>
</table>

价格1
价格2
价格3
8,76美元
9,30美元
9,85美元
事先非常感谢。

有这样的吗

var prices=document.querySelectorAll('.price');
var StartDiscovery=20;
var minDiscount=0;
组的var countOfgroups=3;
var-curGroup=1;
var贴现=开始贴现;
[]forEach.call(价格、函数(价格){
if(折扣countOfgroups){
curGroup=1;
折扣=开始搜索;
}
//获取当前行的起始价格
var priceText=price.innerText;
//从字符串中获取价格
priceText=priceText。替换(/[^0-9\,]/ig');
//将计数替换为“,”到“.”
priceText=priceText.replace(',',');
//以美分计价
价格文本=价格文本*100;
//打折
价格文本=价格文本*(100-折扣)/100;
//四舍五入价格
priceText=Math.floor(priceText.toString();
//以美元计价
priceText=priceText.slice(0,-2)+'..+priceText.slice(-2);
//获取格式化价格
价格文本=“$”+价格文本+“美元”;
//将值写入行
price.innerText=priceText;
折扣-=5;
curGroup++;
})

价格1
价格2
价格3
10,95美元
10,95美元
10,95美元
10,95美元
10,95美元
10,95美元
10,95美元
10,95美元
10,95美元

抓取价格文本,转换成数字,做数学运算,把它写回DOM。你太神奇了,@Anatoly。这正是我需要的。然而,这似乎是一个小问题。在第四排之后,价格是负数:(我猜这是因为折扣。你可以添加最大折扣并检查:)我在回答中添加了最大折扣检查。负数问题已解决,但在你的帮助下,我为无法解决最后一个问题而感到羞愧。您的表格输出为$8,76 USD(10,95)(没关系),但我的表格输出为$9855,9 USD(10,95 USD)。此外,您的脚本将10%应用于价格1、价格2和价格3。我编辑了我的主要问题,使其更具解释性。过去两天我一直在试图解决这个问题,但我完全是一个不懂Javascript的人。老实说,非常感谢你的帮助。我真的很感激。现在正在工作,但只是第一排。请尝试添加更多行并进行检查。
<table border="1">
  <tr>
    <th>Price 1</th>
    <th>Price 2</th>
    <th>Price 3</th>
  </tr>
  <tr>
    <td class="price">$8,76 USD</td><!-- 20% discount -->
    <td class="price">$9,30 USD</td><!-- 15% discount -->
    <td class="price">$9,85 USD</td><!-- 10% discount -->
  </tr>
</table>