लोड हो रहा है...

JavaScript तारीख

उंगली शून्य पर जनवरी रखो, फिर गिनो। फरवरी एक, मार्च दो। दीवार वाले कैलेंडर पर मार्च तीसरा महीना दिखता है, इसीलिए हाथ 3 की तरफ चला जाता है। इस गिनती को एक ही सुबह पर टिकाए रखते हैं: वाचनालय गुरुवार 14 मार्च 2024 को सुबह साढ़े नौ खुला। पन्ना ताज़ा करने पर यह सुबह दूसरी «अभी» में न बदल जाए।

यह खोज नहीं, गिनती है

ऐरे में जवाब कोठरी होती थी, या −1, या हाँ-ना, या खुद मुहर। तारीख उस ढंग से नहीं मिलती। तुम एक क्षण खुद बनाते हो, फिर उससे एक बात पूछते हो। पूछने से घड़ी आगे नहीं बढ़ती।

इसी सुबह की छह संख्याएँ

नाम रटने की सूची मत बनाओ। देखो इस गुरुवार को हर सवाल का अंक क्या है, और बगल वाला अंक कहाँ अदला-बदली हो जाता है।

📊 इस गुरुवार की पर्ची

तरीका तुम क्या पूछ रहे हो इस सुबह का अंक जो अक्सर बदल जाता है
getFullYear साल पूरा 2024 उसे 24 लिख देना
getMonth वस्तु के अंदर मार्च कहाँ बैठा है 2 उसे 3 पढ़ लेना
getDate महीने की कौन-सी तारीख 14 गुरुवार का अंक
getDay गुरुवार सप्ताह में कहाँ है 4 महीने की 14
getHours 0 से 23 वाली घड़ी पर घंटा 9 सुबह का अलग चिह्न ढूँढना
getMinutes मिनट 30 30 को घंटे से माँगना

जनवरी 0 है तो मार्च 2 है। रविवार 0 है तो सोमवार 1, मंगल 2, बुध 3, गुरुवार 4। ऐरे वाला शून्य पहली कोठरी था। ये शून्य साल और हफ्ते की शुरुआत हैं।

पहले साल, महीना अभी नहीं

इस पंक्ति का काम सिर्फ आगे वाला अंक है। 2024 बिना काटे रहता है। दिन, घंटा और मिनट दूसरी पढ़तों के लिए हैं।

गुरुवार का साल

javascript
let opened = new Date(2024, 2, 14, 9, 30);
console.log(opened.getFullYear());

2024 इसलिए दिखता है क्योंकि वही पहला अंक था। महीने वाला 2 इस पंक्ति में नहीं छपता, पर वस्तु बनते ही उसका मतलब मार्च है। 24 साल का छोटा लिखना है, यह पढ़ना नहीं।

वस्तु के अंदर मार्च

javascript
let opened = new Date(2024, 2, 14, 9, 30);
console.log(opened.getMonth());

2 देखकर तुरंत 1 मत जोड़ देना। जनवरी शून्य पर बैठी है, इसलिए यह 2 मार्च ही है। दीवार वाला «तीसरा» तब लिखते हो जब वाक्य किसी की आँख के लिए हो। इस पढ़त में अंक को रहने दो।

चौदह और गुरुवार

javascript
let opened = new Date(2024, 2, 14, 9, 30);
console.log(opened.getDate());
console.log(opened.getDay());

14 महीने की तारीख है, 4 गुरुवार है अगर रविवार को शून्य मानो। दोनों एक के बाद एक इसलिए आए क्योंकि तुमने दोनों पूछे। सवाल एक नहीं है। तरीके उलट दिए तो तारीख को वार समझोगे, या वार को तारीख।

साढ़े नौ

javascript
let opened = new Date(2024, 2, 14, 9, 30);
console.log(opened.getHours());
console.log(opened.getMinutes());

पहले 9, फिर 30। घंटे आधी रात के 0 से 23 तक चलते हैं, इसलिए यह 9 सुबह है और अलग झंडे की जरूरत नहीं। 30 मिनट है। उसे घंटे से माँगना गलत सुई देखना है।

बीस तारीख की मुलाकात

javascript
let opened = new Date(2024, 2, 14, 9, 30);
let visit = new Date(2024, 2, 20, 15, 0);
console.log(visit.getTime() > opened.getTime());
console.log(visit.getDate());

मुलाकात 20 मार्च को तीन बजे दिन में है, यानी उद्घाटन के बाद। getTime हर क्षण को एक ऐसी संख्या बनाता है जिससे पहले-बाद का पता चले, और तुलना true होती है। अगली पंक्ति 20 है, उसी मुलाकात की तारीख। === यह नहीं पूछता कि कौन बाद में है। वह सिर्फ देखता है कि दोनों नाम एक ही वस्तु हैं या दो। यहाँ दो हैं।

वह वाक्य जो कोड न देखने वाला पढ़े

साल और तारीख जैसे हैं वैसे लो। महीना वैसा लिखो जैसा दीवार वाला कैलेंडर गिनता है।

पढ़ने वाले के लिए पंक्ति

html
<!DOCTYPE html>
<html>
<head>
<title>dates — page</title>
</head>
<body>
<p id="when">…</p>
<script>
let opened = new Date(2024, 2, 14, 9, 30);
let year = opened.getFullYear();
let displayMonth = opened.getMonth() + 1;
let day = opened.getDate();
let box = document.getElementById("when");
box.textContent = year + "-" + displayMonth + "-" + day;
</script>
</body>
</html>

अनुच्छेद में 2024-3-14 दिखता है। वस्तु से महीना फिर पूछो तो वह अब भी 2 है। आगे बढ़ा हुआ अंक उस वाक्य में है जो आँख पढ़ती है। सहेजी हुई सुबह नहीं हिली।

इसी सुबह को छह जगह जाँचो

अंदाज़ा नहीं, मिलान।

  1. पूरा साल 2024 है, 24 नहीं
  2. वस्तु के अंदर मार्च 2 है
  3. 14 getDate से आता है और गुरुवार का 4 getDay से
  4. घंटा 9 है और मिनट 30
  5. बीस तारीख की मुलाकात बाद की है, तुलना true है, और वह दिन 20 है
  6. अनुच्छेद का वाक्य 2024-3-14 है और वस्तु महीना 2 ही रखती है

प्रोग्राम चलता रहता है, तारीख गलत हो जाती है

कोई चेतावनी नहीं आती। बस महीना या अंक वह नहीं रहता जो तुम समझ रहे थे।

  • मार्च चाहते हुए new Date को 3 देना, जिससे अप्रैल बनता है
  • 2 को फरवरी पढ़ना, या getMonth से 3 माँगना
  • 14 को getDay से माँगना
  • गुरुवार का 4 getDate से माँगना
  • कौन-सा क्षण बाद का है, यह === से तय करना
  • बिना अंक new Date() बुलाना, ताकि हर ताज़ा करने पर दूसरी सुबह आ जाए

पन्ना बंद करने के बाद यही रहना चाहिए

  • मार्च 2 है क्योंकि जनवरी 0 है
  • महीने की तारीख getDate है
  • वार getDay है और रविवार 0 है
  • दो क्षणों का पहले-बाद getTime की संख्या से पता चलता है
  • इंसान जो वाक्य पढ़ता है उसमें महीना वस्तु से एक कदम आगे लिखा होता है, और वस्तु 2 पर ही रहती है
  • आगे Math वस्तु है

🧠 अपने ज्ञान की परीक्षा करें

शुरू करने के लिए तैयार

अपने ज्ञान की परीक्षा करें

इस इंटरैक्टिव क्विज़ के साथ अपनी चुनौती लें और देखें कि आप विषय को कितनी अच्छी तरह समझते हैं

❓
8
प्रश्न
🎯
70%
पास करने के लिए
♾️
∞
समय
🔄
∞
प्रयास

📝 निर्देश

  • हर प्रश्न को ध्यान से पढ़ें
  • हर प्रश्न के लिए सबसे अच्छा उत्तर चुनें
  • आप जितनी बार चाहें क्विज़ दोबारा दे सकते हैं
  • आपकी प्रगति शीर्ष पर दिखाई जाएगी