$是第一个括号里的内容
比如
var r = /(\d{3})/;
var s = "123456";
var j = s.replace(r, "$1,");
这里$1就是第一个括号里匹配的内容。(第一个括号匹配的是123)
所以j的结果就是123,456
以此类推$n
如果出现欠套的话比如
var r = /((\d{2})(\d{1}))/;
var s = "123456"
$1就是最外层的括号(第一次出现的括号)所以结果是123
$2就是第一个括号里面的里面的第一个括号(第二个次出现的括号)结果是12
$3结果就是3