The locales and options arguments customize the behavior of the function and let applications specify the language whose formatting conventions should be used.
In implementations that support the Intl.DateTimeFormat API, these parameters correspond exactly to the Intl.DateTimeFormat() constructor’s parameters. Implementations without Intl.DateTimeFormat support are asked to ignore both parameters, making the locale used and the form of the string returned entirely implementation-dependent.
you will find many links talking about this issue. e.g.:
toLocaleTimeString isn’t part of the core js library used in react-native for android. No idea why, it is for ios. I ended up using momentJs for this (and a few other) reasons to handle the localization.