多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## 计算1-10000中出现的0 的次数 一、for循环法遍历法 ~~~ function getZeroCount(num) { let count = 0; let regObj = /0/g; for (let i = 1; i <= num; i++) { let str = '' + i; let match = str.match(regObj); count += match == null ? 0 : match.length; } return count; } console.log(getZeroCount(10000)); ~~~ 二、split切割法 ~~~ function getZeroCount(num) { return Array.from({length: num}, (v, i) => i + 1).join().split("0").length - 1; } console.log(getZeroCount(10000)); ~~~ > **切割法思路** > 首先,判断一个字符串有几个0,除了正则外还可以利用.split()。比如: > > ~~~ > var str = "1029304910"; > var len = str.split("0").length - 1; > ~~~ > > 其次,有没有必要把每个数字挨个检验?或许可以先把他们拼接起来,比如利用Array.join()。