समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो "HH:MM:SS" प्रारूप में एक समय स्ट्रिंग लेता है। लेकिन जोड़ में एक समस्या थी, इसलिए कई समय स्ट्रिंग्स टूटी हुई हैं जिसका अर्थ है कि MM भाग 60 से अधिक हो सकता है, और SS भाग भी 60 से अधिक हो सकता है। हमारा फ़ंक्शन स्ट्रिंग में आवश्यक परिवर्तन करेगा और नई सुधारी गई स्ट्रिंग लौटाएगा।
उदाहरण के लिए:
"08:11:71" -> "08:12:11"
उदाहरण
निम्न कोड देखें:
const str = '08:11:71'; const rectifyTime = (str = '') => { if(!Boolean(str)){ return str; }; const re = /^(\d\d):(\d\d):(\d\d)$/; if (!re.test(str)){ return null; }; let [h, m, s] = str.match(re).slice(1,4).map(Number); let time = h * 3600 + m * 60 + s; s = time % 60; m = (time / 60 |0) % 60; h = (time / 3600 |0) % 24; return [h, m, s] .map(String) .join(':'); }; console.log(rectifyTime(str));आउटपुट
निम्न कंसोल आउटपुट है:
08:12:11