This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The global accessor property of RegExp instances returns whether or not the g flag is used with this regular expression.
const regex1 = /foo/g; console.log(regex1.global); // Expected output: true const regex2 = /bar/i; console.log(regex2.global); // Expected output: false
RegExp.prototype.global has the value true if the g flag was used; otherwise, false. The g flag indicates that the regular expression should be tested against all possible matches in a string. Each call to exec() will update its lastIndex property, so that the next call to exec() will start at the next character.
Some methods, such as String.prototype.matchAll() and String.prototype.replaceAll(), will validate that, if the parameter is a regex, it is global. The regex's [Symbol.match]() and [Symbol.replace]() methods (called by String.prototype.match() and String.prototype.replace()) would also have different behaviors when the regex is global.
The set accessor of global is undefined. You cannot change this property directly.
const globalRegex = /foo/g; const str = "fooexamplefoo"; console.log(str.replace(globalRegex, "")); // example const nonGlobalRegex = /foo/; console.log(str.replace(nonGlobalRegex, "")); // examplefoo
| Desktop | Mobile | Server | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
global |
1 | 12 | 1 | 5 | 1 | 18 | 4 | 10.1 | 1 | 1.0 | 4.4 | 1 | 1.0.0 | 1.0 | 0.10.0 |
prototype_accessor |
48 | 12 | 38 | 35 | 1.3 | 48 | 38 | 35 | 1 | 5.0 | 48 | 1 | 1.0.0 | 1.0 | 6.0.0 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/global