function multiplicar() {
m1 = document.getElementById("multiplicando").value;
m2 = document.getElementById("multiplicador").value;
m3 = m2 * 0.01;
x = m3 * parseFloat(m1);
x1 = x - 2380000;
document.getElementById("resultado").value = x1.toLocaleString();
}
const numberWithCommas = (x) => {
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
function Sumar() {
var n1 = 1;
var n2 = document.getElementById('multiplicador').value;
var suma = parseInt(n1) + parseInt(n2);
document.getElementById("multiplicador").value = suma;
multiplicar();
}
function resta() {
var r1 = 1;
var r2 = document.getElementById('multiplicador').value;
var resta = parseInt(r2) - parseInt(r1);
document.getElementById("multiplicador").value = resta;
multiplicar();
}
<form id="multiplicar">
<div class="container-block">
<label>$</label> <input type="text" name="multiplicando" id="multiplicando" value="300000000" onChange="multiplicar();" onkeydown="noPuntoComa( event )" placeholder="Escribe el valor">
</div>
<div class="container-block">
<input type="button" onclick="resta();" value="-" class="resta">
<div class="container-input">
<input type="text" name="multiplicador" id="multiplicador" value="3" onChange="multiplicar();" onkeyUp="multiplicar();" min="0" pattern="^[0-9]+">
<label style=" right: 130px;">%</label>
</div>
<input type="button" onclick="Sumar();" value="+" class="suma">
</div>
<div class="container-block-resultado">
<label>$</label> <input type="text" id="resultado">
</div>
</form>
我正在学习一些JavaScript,我想用数千个小数学运算。示例:300,000,000 * 3%= 900,000这是应该显示给用户的内容,用户可能会像计算器一样提高或降低百分比或值,而我找不到如何将数字相乘并以javascript中的百分比表示。
答案 0 :(得分:3)
因此将您的字符串转换为数字。删除逗号并转换为数字。将百分比转换为十进制数。要添加时,请添加回逗号。
function removeComma (str) {
return Number(str.replace(/,/g, ''))
}
function makePercentage (str) {
return Number(str.replace(/%/, '')) / 100
}
function addCommas (number) {
return number.toLocaleString()
}
var str1 = "300,000,000"
var str2 = "3%"
var mathResult = removeComma(str1) * makePercentage(str2)
var result = addCommas(mathResult)
console.log(result)
答案 1 :(得分:0)
JavaScript具有局限性,因此在这种情况下,最大安全整数为 2147483647.还有一些用于处理大int值计算BigNumber.js的库。
我建议使用整数,但是如果您需要使用非常大的整数,我建议使用较大的数字或较大的整数库,例如其中之一:
http://jsfromhell.com/classes/bignumber https://silentmatt.com/biginteger/ 缺点是您必须使用这些数字对象及其方法,而不是原始的Number类型和标准JS运算符,但是在处理大数时将具有更大的灵活性。