parsingstring“009”为整数在JavaScript?
如何在JavaScript中parsing009我需要返回值为9,但它返回0。
但是当我parsing001它返回1 。
var tenant_id_max = '3-009'; tenant_id_split = tenant_id_max.split("-"); var tenant_id_int = tenant_id_split[1]; var tenant_id_count = parseInt(tenant_id_int);
做
var tenant_id_count = parseInt(tenant_id_int, 10);
这是因为以“0”开始的string被parsing为八进制(如果不指定基数,那么对于“009”来说效果不好,因此得到0)。
从MDN :
如果inputstring以“0”开始,则基数为八(八进制)。 这个function是非标准的,有些实现故意不支持它(而是使用基数10)。 出于这个原因,当使用parseInt时总是指定一个基数。
最重要的是要记住总是指定基数 。