<html>
<head>
<meta charset=utf-8>
</head>
<body>
<script type="text/javascript">
function _comma(number) {
let str = number.toString();
return str.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
}
</script>
</body>
</html>
利用正则表达式(被两个反斜杠包裹的就是正则表达式 regular expression,RegExp)进行解题:
1.\d表示找到的一个数字,外面包裹()用于分组,被$1记忆
2.(?= ***)是一个先行断言,x(?= y)会匹配后面跟着y的x
3.(?:***),这里的括号是为了便于阅读,为了不被$记忆,在表达式前使用了?:
4.\d{3}表示三个数字
5.+匹配前面一个表达式 1 次或者多次
6.$匹配字符串的结束
7.外面的g表示进行全局搜索匹配

京公网安备 11010502036488号