此篇主要整理面试时候的编程题和练习。
1、写一个js函数,实现对一个数字每3位加一个逗号,如输入100000, 输出100,000(不考虑负数,小数)—百度前端面试题
1 | const pos = 1000 |
思路: 结果是正确的,例如除法和求余方法做是比较简单和清晰的。当然也可以使用字符串/数组做法的做法:
下面是字符串/数组解法:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20// console.log(res)
const pos = 1000
function paser (num) {
let str = parseInt(num).toString().split('')
let len = pos.toString().length - 1
let res = ''
while(str.length > len) {
res = ',' + str.splice(-3, 3).join('') + res
}
res = str.join('') + res
return res
}
paser(0) // 0
paser(1000) // 1,000
paser(1999) // 1,999
paser(199912314141) // 199,912,314,141
paser(988989898989888) // 98,898,989,898,988