parseInt出了什么问题

use*_*339 2 javascript jquery

我只是在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来解决.

Nie*_*sol 5

028,034并且09被视为八进制数,因为它们始于0并且您没有指定基数.89无效数字,所以你得到20第一个和最后一个,和第二个是转换为十进制3*8 + 4 = 28.

使用 parseInt(kg,10);