枚举的实现求得1-1000所有出现1的数字并计算出现1的个数

  最近有幸得到一个小小面试题,研究了研究,然后分享 出来,希望能对大家的代码事业有所帮助。

  面试题是:求得1-1000所有出现1的数字,并计算出现1的个数

  解法:

  

复制代码 代码如下:

  //枚举方法 只能在谷歌浏览器下查看

  (function () {

  var tmp = [];

  for (var i = 1; i< 1001; ++i){

  /1/g.test('' + i-1) && tmp.push(i);

  }

  console.log(tmp.length)

  console.log(tmp.reduce(function(i,j) {

  return i+j

  }))

  })()

  以上便是枚举的实现方法,但是若从1-N就不管用了,因为N不一定会是多少。