'Why is string.replaceAll() not a function on Android React Native?

I recently stumbled on this issue that, though ran well on iOS, could not run on Android, even though I use the same code base and run them in parallel.

Error log on react native 0.64.4

Note that (number + '') always returns a string, and this code runs on iOS.

Trying the regex with the global flag "g":

string.replace(/searchString/g, replaceString)

like some suggested StackOverFlow answers does not work either.

Can you guys guess the reasons and provide solutions?



Solution 1:[1]

replace method works perfectly in the latest React Native version. Please note you need to use string literals (`) instead of quotes (") for string variables.

string.replace(`/${searchString}/g`, replaceString);

Tested on the following React Native version:

react-native-cli: 2.0.1
react-native: 0.64.3

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1