[英]how to calculate numbers in a string in javascript?
我從用戶那里得到一些輸入並將它們保存在div標簽中,就像計算器一樣,例如,用戶將100-50 + 30放進去,然后我將其存儲在div標簽中,當用戶單擊我想要的轉到按鈕時給他看結果是80。我嘗試使用parseint和number,因為string包含+ / *之類的運算符,這些無效
var a = document.querySelector(".output").innerHTML;
您可以簡單地使用eval
,但是出於安全原因,我建議在評估表達式之前從用戶輸入中刪除除數字和允許的運算符之外的所有內容:
const input = '100-50+30 [some malicious code]' const result = eval(input.replace(/[^0-9\\+\\-\\*\\/]/g, '')); console.log(result)
使用eval()
函數
var expression = '100-50+30';
console.log(eval(expression));
eval()
函數評估以字符串形式表示的JavaScript代碼。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.