How to Fix "replaceAll is not a function" JavaScript Error?

Learn how to fix the "replaceAll() is not a function" JavaScript error

Why Does This Happen?

If you're seeing the error "TypeError: replaceAll is not a function", it is likely due to the method not implemented/supported by the browser version (or the Node.js version) that you're using.

Note that the String.prototype.replaceAll() method was added in ES2021/ES12.

How to Fix the Issue?

As a substitute for String.prototype.replaceAll(), you may use the String.prototype.replace() method with a regular expression that has the global ("g") flag set. It works in the same way and has great browser support.

The following example shows replaceAll() and it's equivalent using replace():

const str = 'foo-bar';

// in older browsers
const result1 = str.replace(/foo/g, 'moo');

// ES12+
const result2 = str.replaceAll('foo', 'moo');

// output: 'moo-bar'
console.log(result1);
console.log(result2);

For more examples, check out our post about how to replace all occurrences of a word in a JavaScript string.


Hope you found this post useful. It was published . Please show your love and support by sharing this post.