This string method exists in browserland, but not in Node. Why not? It's neither brand-new nor exotic.
And yet:
$ node
Welcome to Node.js v14.13.1.
Type ".help" for more information.
> 'asdf'.replaceAll
undefined
I'm not asking for polyfills; I can do a regex or loop over single-instance replace
. I'm trying to figure out why this seemingly unremarkable feature doesn't exist in NodeJS, even though it seems to be available in just about every other JS environment, and even though all the docs suggest to me that it should exist.
Nodejs v14 has V8 8.4 But, replaceAll was added to V8 8.5. Nodejs v15 has V8 8.6 and thus that's the first nodejs version where you can use . replaceAll() .
The "replaceAll" is not a function error occurs when we call the replaceAll() method on a value that is not of type string, or in a browser that doesn't support it. To solve the error, only call the replaceAll() method on strings in supported browsers.
replaceAll() The replaceAll() method returns a new string with all matches of a pattern replaced by a replacement . The pattern can be a string or a RegExp , and the replacement can be a string or a function to be called for each match.
The replaceAll() method replaces each substring that matches the regex of the string with the specified text.
The replaceAll () method returns a new string with all matches of a pattern replaced by a replacement. The pattern can be a string or a RegExp, and the replacement can be a string or a function to be called for each match. The original string is left unchanged. JavaScript Demo: String.replaceAll ()
String.prototype.replaceAll () The replaceAll () method returns a new string with all matches of a pattern replaced by a replacement. The pattern can be a string or a RegExp, and the replacement can be a string or a function to be called for each match. The original string is left unchanged.
In this article, we’ll look at how to fix the JavaScript .replaceAll () is not a function error in some browsers. To fix the JavaScript .replaceAll () is not a function error in some browsers, we can add a polyfill to make the method available in all browsers.
Nodejs v14 has V8 8.4 But, replaceAll was added to V8 8.5. Nodejs v15 has V8 8.6 and thus that's the first nodejs version where you can use .replaceAll()
. You can see this all described in the nodejs v15 release notes or in this specific change report.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With