<script language="javascript">
var b = "0.2801";
var c = "1.002";
var sum1 = parseFloat(a)+parseFloat(b)+parseFloat(c);
var sum2 = (parseFloat(a)+parseFloat(b)+parseFloat(c)).toFixed(4)
document.write("a+b+c="+sum1);
document.write("<br/>")
document.write("a+b+c="+sum2)
</script>
1.3921000000000001
1.3921
a,b,c相加本來為1.3921,但sum1得出的結果為:1.3921000000000001,顯然不正確,通過toFixed(n)方法修正后,得到正確結果。
js parsefloat parseint
JavaScript提供了3個顯式的類型轉換函數,分別是eval()、parseInt()和parseFloat()。
eval()函數:將字符串表達式轉換成數字值。例如,語句total=eval("432.1*10")的結果是total=4321即將數值4321賦予total變量。
parseInt()函數:把字符串轉換成整數。返回是從字符串的第一個字符開始,如果字符不是以整數開頭則返回0。parseInt()函數還可以轉換十六進制數或十進制數。
例如:parseInt("123xyz") 返回123,而parseInt("xyz")返回0。
parseFloat()函數:類似於parseInt()函數,它返回字符串上包含的第一個浮點數。如果字符串不以有效浮點數開頭,則返回0。
例如:parseFloat("2.1e4xyz")返回21000;而parseFloat("xyz")返回0。
JavaScript中parseFloat函數方法是返回由字符串轉換得到的浮點數。 使用方法:
parseFloat(numString)其中numString 參數是包含浮點數的字符串。JavaScript中parseFloat函數方法返回與 numString 中保存的數相等的數字表示。如果 numString 的前綴不能解釋為浮點數,則返回 NaN (而不是數字)。
parseFloat("abc") // 返回 NaN。
parseFloat("1.2abc") // 返回 1.2。