Как объяснить «$ 1, $ 2» в Javascript при использовании регулярного выражения?
Часть кода Javascript выглядит следующим образом:
num="11222333";
re = /(\d+)(\d{3})/;
re.test(num);
num.replace(re, "$1,$2");
Я не мог понять грамматику "$ 1, $ 2". Книга, из которой взят этот код, говорит, что $ 1 означает RegExp. $ 1, $ 2 означает RegExp. $ 2. Но эти объяснения приводят к большему количеству вопросов:
Известно, что в Javascript имя переменных должно начинаться с буквы или _, как здесь $ 1 может быть допустимым именем переменной-члена RegExp здесь?
Если я введу $ 1, командная строка скажет, что он не определен; если я введу «$ 1», командная строка отображает только $ 1, а не 11222. Итак, как метод замены знает, что означает «$ 1, $ 2»?
Спасибо.