I'm trying to compare the current time with a specific time in React Native by using JavaScript but it's not working with this method that i have tried. This is how i have tried it:
export default function SettingsComponent() {
let today = new Date();
let currentTime = today.toLocaleTimeString();
useEffect(() => {
console.log(currentTime)
if(currentTime == "12:39:30"){
console.log('Comparison is working')
}
})
}
If there are any other suggestions to do this, let me know!
You can make this work by passing argument(s) to toLocalTimeString so to guarantee the format you get from it. For instance, you could specify a locale that uses the hh:mm:ss format:
today.toLocaleTimeString("en-SE")
Secondly, you should realise that you only have 1 second to have a match. One can imagine how some latency can make you miss a match, and the code only gets executed just after that second passed.
Likely your useEffect is running before the currentTime is set. Try adding the currentTime to the useEffects dependency array.
useEffect(() => {
console.log(currentTime)
if(currentTime == "12:39:30"){
console.log('Comparison is working')
}
}, [currentTime])