我想为此图表创建一个转换器:
https://ww2.riogrande.com/content/brown-sharpe-gauge-thicknesses-cg-html
我已将cm到英寸的部分写成三位小数:
function LengthConvertermm(valNum) {
document.getElementById("inputinch")
.value=parseFloat(valNum*0.03937007874).toFixed(3);
}
但在图表上,测量值越高,标准数越低!
我如何创建这部分代码?我无法解决它,因为它似乎不像乘法那么简单!
答案 0 :(得分:2)
如图所示on Wikipedia,规格尺寸在数学上已明确定义 因此,仪表尺寸以英寸和毫米为单位可以很容易地从仪表编号中计算出来,简单的算法也可以得到相反的结果。
请注意,我为in和mm结果提供了结果(未舍入),因为您链接的表格也是如此。
const gaugeToIn = n => 0.32486 * Math.pow(Math.E, -0.11594 * n);
const gaugeToMm = n => 8.25154 * Math.pow(Math.E, -0.11594 * n);
// Unused, but reverse operations as well
const inToGauge = n => Math.round(Math.log(n / 0.32486) / (-0.11594));
const mmToGauge = n => Math.round(Math.log(n / 8.25154) / (-0.11594));
// Used to display results
const write = msg => {
document.body.appendChild(document.createElement('p')).innerHTML = msg;
};
for (let gauge = 0; gauge < 35; gauge++) {
const flooredIn = gaugeToIn(gauge).toFixed(3);
const flooredMm = gaugeToMm(gauge).toFixed(3);
write(`gauge ${gauge}: ${flooredIn} in / ${flooredMm} mm`);
}
&#13;
答案 1 :(得分:0)
function LengthConvertermm(valNum) {
document.getElementById("inputinch").value= 100 - parseFloat(valNum*0.03937007874).toFixed(3);
}
//假设100是最大数
答案 2 :(得分:0)
尝试
parseFloat(+valNum*0.03937007874)
也许valNum
是字符串;