Javascript - Leading zero to a number converting the number to some different number. not getting why this happening?
javascript, jquery
Solution
If there is a leading 0, it is converting it to octal (base 8) as long as its a valid number in base 8 (no numbers greater than 7).
For example:
`017` in base 8 is 1 * 8 + 7 = 15 `037` in base 8 is 3 * 8 + 7 = 31
`018` is converted to `18` because `018` isn't a valid number in base 8
Note that the behavior as to which base the number is converted to by default can be browser-specific, so its important to always specify the base/radix when using `parseInt`:
`parseInt("017",10) === 17`
UPDATE based on comments:
`parseInt` expects a `string` as the first argument, so
`parseInt("012",10) === 12`
Problem
A leading zero to some number converting the number to some unknown number format. for example : `017` is getting converted to `15` `037` is getting converted to `31` Also found that numbers having 8 0r 9 at end are remaining same for example : `018` is `18` `038` is `38` `o59` is `59` one more thing that I found is for each next range of 10 the difference between converted value and the actual value get incremented by 2 for example : for range `00-09` difference is `0` i.e value of 07 will be 7, 04 will be 4 for range `010-019` difference is `2` value of 017 will be 15, 013 will be 11 for range `020-029` difference is `4` value of 027 will be 23, 021 will be 17 and so on.. here is a snipet for test http://jsfiddle.net/rajubera/BxQHF/ I am not getting why this is happening ? Please help me how to get the correct decimal number from the number having leading zero ?