Number of Digit One LeetCode solution in JavaScript
1var countDigitOne = function (n) {2if (n <= 0) return 0;3if (n < 10) return 1;4var base = Math.pow(10, n.toString().length - 1);5var answer = parseInt(n / base);6return (7countDigitOne(base - 1) * answer +8(answer === 1 ? n - base + 1 : base) +9countDigitOne(n % base)10);11};