String.prototype.replaceAll() not working
There is no replaceAll
function in JavaScript.
You can use a regex with a global identifier as shown in pst's answer:
a.replace(/:/g,"hi");
An alternative which some people prefer as it eliminates the need for regular expressions is to use JavaScript's split
and join
functions like so:
a.split(":").join("hi");
It is worth noting the second approach is however slower.
Update: All recent versions of major browsers, as well as NodeJS 15+ now support replaceAll
Original:
There is no replaceAll
in JavaScript: the error console was probably reporting an error.
Instead, use the /g
("match globally") modifier with a regular expression argument to replace
:
const a = "::::::";
const replaced = a.replace(/:/g,"hi");
console.log(replaced);
The is covered in MDN: String.replace (and elsewhere).