=ROUND(IF(J8=0,"-",IF(J8>=3200,((J8-LOOKUP(-J8*80%,-{999,5,2,0,-0.08}*10000,{7,2,0,0}*1000))/(1-80%*LOOKUP(-J8*80%,-{999,5,2,0,-0.08}*10000,{4,3,2,0,0}*10%))),IF(J8>800,(J8-800*20%)/(1-20%),J8))-J8),2) 帮我还原成js代码
时间: 2023-09-29 09:05:42 浏览: 21
这是一段Excel公式,需要转换成JS代码。以下是转换后的代码:
```
function round(num, decimalPlaces) {
var p = Math.pow(10, decimalPlaces);
return Math.round(num * p) / p;
}
function calculate(J8) {
var result;
if (J8 == 0) {
result = "-";
} else if (J8 >= 3200) {
var lookupArray = [-999, -5, -2, 0, 0.08];
var lookupValue = -J8 * 0.8;
var rateArray = [7, 2, 0, 0];
var rateValue = 0;
for (var i = 0; i < lookupArray.length; i++) {
if (lookupValue <= lookupArray[i] * 10000) {
rateValue = rateArray[i] * 1000;
break;
}
}
result = round((J8 - lookupValue / 100 * rateValue) / (1 - 0.8 * rateValue / 100), 2);
} else if (J8 > 800) {
result = round((J8 - 800 * 0.2) / (1 - 0.2), 2);
} else {
result = J8;
}
return round(result - J8, 2);
}
```
这段代码定义了两个函数,`round`用来将一个数字保留指定位数的小数,`calculate`用来计算给定的`J8`值。
`calculate`函数中,根据`J8`的值的不同,做出不同的计算。具体来说:
- 如果`J8`为0,则结果为"-"。
- 如果`J8`大于等于3200,则根据一定的计算公式计算结果。
- 如果`J8`大于800且小于3200,则根据一定的计算公式计算结果。
- 如果`J8`小于等于800,则结果为`J8`本身。
最后,将计算结果减去`J8`,并保留两位小数,就是最终的输出结果。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)