How to solve replaceAll is not a function in JavaScript
In this tutorial, we are going to learn about how to solve the TypeError: replaceAll is not a function in JavaScript
When we use a ‘replaceAll()’ method on a value which is not a data type string we will get the following error in our console.
Example:
const value = 8999;
console.log(value.replaceAll(9, 2));
Output:
"TypeError: value.replaceAll is not a function
In the example above, we are getting the error because we are using the ‘replaceAll()’ method on a datatype number.
To solve the “TypeError: replaceAll is not a function”, make sure to call the replaceAll() method on a data type string or convert the number to string before calling the replaceAll() method on it.
Here is an example:
const value = 8999;
const result = value.toString().replaceAll(9, 2);
console.log(result);
Output:
'8222'
In the example above, we first converted the given value to a string using the toString() method, then we called a replaceAll() method on it.
Note: The ‘replaceAll()’ method creates a new string with the replacement values, in our case we have replaced all 9’s in the string with 2.
Type checking
To avoid the run time errors, we can also check the given datatype is a string or not before calling the replaceAll() method on it.
Here is an example:
const value = 8999;
if(typeof value === 'string'){
console.log(value.replaceAll(9, 2));
}else{
console.log('Given value is not a string');
}
Conclusion
The “replaceAll is not a function” error occurs, when we call a replaceAll() method on a value which is not string. To solve the error convert the value to an string before calling the replaceAll() method on it or make sure to use the replaceAll() method on valid strings.