狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

JS中數(shù)字直接相加時出錯,轉換成數(shù)字類型Number()或乘10除10解決

admin
2023年9月28日 0:3 本文熱度 763

Javascript與許多其他編程語言不同,Javascript 不會定義不同類型的數(shù),比如整數(shù)、短的、長的、浮點的等等。
在JS中浮點的算數(shù),個人實際測試了幾個,0.1+0.2,0.4+0.2,0.7+0.2,這種計算的數(shù)值就是不是很準確,例如,0.4+0.2的結是0.6000000000000001
字符串轉換成數(shù)字類型的方法如下:

方法1:Number(需要轉換的字符串)

方法2:
可以通過每個數(shù)乘以10,最后再整體除以10的方法,讓這幾個有問題的浮點數(shù)顯示正常。
例如,0.4+0.2的結是0.6000000000000001,而使用(0.4*10+0.2*10)/10,結果就是0.6
測試代碼:

<body>
小數(shù)測試:
文本框value值獲取的是string類型的:
<input type="text" id="A1" value="0.3">+
<input type="text" id="A2" value="0.4">=
<input type="text" id="S1">
<br>
<input type="button" onclick="s1()" value="點擊字符串拼接"><br>
<input type="button" onclick="s2()" value="點擊Number轉換的"><br>
<input type="button" onclick="s3()" value="點擊Number轉換的且用了乘除法"><br>
<script language="javascript" type="text/javascript">  
function s1(){//文本框輸入的為字符串類型,相加后為字符串拼接
   var textA1,textA2,textS1;
   textA1
=document.getElementById("A1").value;
   textA2
=document.getElementById("A2").value;
   textS1
=textA1+textA2;
   document.getElementById(
"S1").value=textS1;
   console.log(
"textA1的類型是:"+typeof(textA1));
   console.log(
"textA2的類型是:"+typeof(textA2));
   console.log(
"textS1的類型是:"+typeof(textS1));
};
function s2(){//字符串類型轉換成數(shù)字類型,Number(需要轉換的字符串)
   var textA1,textA2,textS1;
   textA1
=Number(document.getElementById("A1").value);
   textA2
=Number(document.getElementById("A2").value);
   textS1
=textA1+textA2;
   document.getElementById(
"S1").value=textS1;
   console.log(
"textA1的類型是:"+typeof(textA1));
   console.log(
"textA2的類型是:"+typeof(textA2));
   console.log(
"textS1的類型是:"+typeof(textS1));
   console.log(
0.3+0.4);
   console.log(
0.3+0.3);
   console.log(
0.1+0.2);
   console.log(
0.4+0.2);    
   console.log(
0.7+0.2);
   console.log(
0.6+0.2);
   console.log(
0.44+0.22);
};
function s3(){//用乘除法解決該問題
   var textA1,textA2,textS1;
   textA1
=Number(document.getElementById("A1").value);
   textA2
=Number(document.getElementById("A2").value);
   textS1
=(textA1*10+textA2*10)/10;
   document.getElementById("S1").value=textS1;
   console.log(
0.4+0.2);
   console.log((
0.4*10+0.2*10)/10);
};
</script>
</body>

圖示:


該文章在 2023/9/28 0:03:51 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務費用、相關報表等業(yè)務管理,結合碼頭的業(yè)務特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved