Как объяснить «$ 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»?

Спасибо.

Ответы на вопрос(5)

Ваш ответ на вопрос