Сводка
Свойство source
возвращает строку, содержащую текст шаблона регулярного выражения без прямых слешей с обеих сторон и без флагов регулярного выражения.
Примеры
Пример: использование свойства source
var regex = /fooBar/ig;
console.log(regex.source); // 'fooBar', не содержит прямые слеши /.../ и флаги 'ig'.
Начиная с ECMAScript 5, свойство source
больше не возвращает пустую строку для пустых регулярных выражений. Вместо этого, возвращается строка" (?:)". Кроме того, теперь экранируются символы окончания строк (такие как, "\n").
new RegExp().source; // "(?:)" new RegExp('\n').source === '\n'; // true, до появления ES5 new RegExp('\n').source === '\\n'; // true, начиная с ES5
Спецификации
Спецификация | Статус | Комментарии |
---|---|---|
ECMAScript 3-е издание. | Стандарт | Изначальное определение. Реализована в JavaScript 1.2. JavaScript 1.5: свойство source является свойством экземпляра RegExp , а не самого объекта RegExp . |
ECMAScript 5.1 (ECMA-262) Определение 'RegExp.prototype.source' в этой спецификации. |
Стандарт | |
ECMAScript 2015 (6th Edition, ECMA-262) Определение 'RegExp.prototype.source' в этой спецификации. |
Стандарт | Свойство source теперь является свойством доступа в прототипе объекта, а не собственным свойством данных экземпляра. |
Совместимость с браузерами
We're converting our compatibility data into a machine-readable JSON format.
This compatibility table still uses the old format,
because we haven't yet converted the data it contains.
Find out how you can help!
Возможность | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Базовая поддержка | (Да) | (Да) | (Да) | (Да) | (Да) |
Возможность | Android | Chrome для Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Базовая поддержка | (Да) | (Да) | (Да) | (Да) | (Да) | (Да) |