簡體   English   中英

如何在 JavaScript 中乘以數千?

[英]How to multiply thousands in JavaScript?

 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 中的百分比表示數千。

因此,將您的字符串轉換為數字。 刪除逗號並轉換為數字。 將百分比轉換為十進制數。 添加當你想顯示它時添加逗號。

 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)

Javascript 有限制,所以在這種情況下最大安全整數是 2147483647。還有一些處理大整數值計算的庫 BigNumber.js。

我建議使用整數,但如果您需要處理非常大的整數,我建議使用大數字或大整數庫,例如以下之一:

http://jsfromhell.com/classes/bignumber https://silentmatt.com/biginteger/缺點是您必須使用這些數字對象及其方法,而不是原始數字類型和標准 JS 運算符,但您將擁有在大量操作時具有更大的靈活性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM