Логика работы:
1. Пусть R будет значением этого this. 2. Если Тип Type(R) не является объектом, выбросить исключение TypeError. 3. Пусть шаблон pattern будет ? ToString(? Get(R, "source")). 4. Пусть флаги flags будут ? ToString(? Get(R, "flags")). 5. Пусть результатом result будет конкатенация строк "/", pattern, "/" и flags. 6. Вернуть результат result.
Возвращенная строка имеет форму RegularExpressionLiteral, который оценивает другой объект RegExp с таким же поведением, что и этот объект.
Информационные ссылки
Предыдущий раздел — ECMAScript | RegExp.prototype.test ( S )
Стандарт ECMAScript — Раздел «RegExp.prototype.toString ( )» — https://tc39.es/ecma262/#sec-regexp.prototype.tostring
ECMAScript | Условные обозначения
ECMAScript | Свойства объекта-прототипа Регулярных Выражений