Take remarks into account.
Remove charCodeOfZero and charCodeOfNine
create currentDigit once and use it then
handle numbers starting with '+' or '.'