我只是在parseInt上遇到1个问题我为我的所有项目都应用了这个parseInt但是今天我才遇到这个问题
我有一个普通的文本输入<input type='text' name='KG'>
,我使用jquery来检索输入值,然后写入另一个输入
<input type='text' name='KG2'>
下面是我的jquery代码
$(":input[name='KG']").keyup(calc);
function calc(){
var kg = $(":input[name='KG']").val();
kg=parseInt(kg);
$(":input[name='KG2']").val(kg);
}
Run Code Online (Sandbox Code Playgroud)
猜怎么着,这个结果我
输入@ KG> show @ KG2
28> 28
028> 2
34> 34
034> 28
9> 9
09> 0
有谁知道出了什么问题?它可以通过使用Math.round来解决.
028,034并且09被视为八进制数,因为它们始于0并且您没有指定基数.8和9无效数字,所以你得到2与0第一个和最后一个,和第二个是转换为十进制3*8 + 4 = 28.
使用 parseInt(kg,10);