Math ऑब्जेक्ट
संख्या रेखा पर दिशा तय करती है, «लगभग» नहीं। फ्रेम की दुकान में एक फोटो है, चौड़ाई 7.6 सेमी। मैट का बचा टुकड़ा 7.2 सेमी है। फोटो निशान से 3.8 सेमी बाईं तरफ खिसकी है। तीन पट्टियाँ पड़ी हैं, 12, 9 और 15 सेमी। ये नाप यहीं टिके रहेंगे। बदलता है वही पूरा अंक जो तुम पहले से मौजूद Math से माँगते हो।
ऑब्जेक्ट बनाना नहीं है
अंकगणित वाले पन्ने पर चिह्न दो संख्याओं के बीच बैठता था और हिसाब वहीं खत्म हो जाता था। तारीख वाले पन्ने पर तुम new Date से एक पल बनाते थे, फिर उसका एक टुकड़ा पढ़ते थे। Math तुम नहीं बनाते। new Math() गिर जाता है। Math को फ़ंक्शन की तरह पुकारना भी गिर जाता है। नाम लो ऑब्जेक्ट का, नाम लो काम का, और वह संख्या दो जो पहले से हाथ में है।
यह पर्ची इसी मेज़ की है
इसे रटने की तालिका मत बना। हर पंक्ति इसी दुकान का एक फैसला है: लेबल पर क्या छपे, कितना काटे, कितना मँगवाए, बाईं तरफ के खिसकाव को कैसे पढ़े, कौन सी पट्टी सबसे लंबी हो और कौन सी सबसे छोटी। पुकारने से नाप अपनी जगह नहीं छोड़ता। आठ को चर के अंदर रखना हो तो तुम खुद रखो।
📊 इसी मेज़ के फैसले
| काम | फैसला | इस मेज़ का अंक | हाथ कहाँ फिसलता है |
|---|---|---|---|
Math.round |
7.6 का निकटतम पूरा सेमी |
8 |
ऋणात्मक संख्या पर आधा |
Math.floor |
7.2 में से जितना सच में कट सके |
7 |
वही काम ऋणात्मक खिसकाव पर |
Math.ceil |
7.2 को ढकने के लिए जितना खरीदना हो |
8 |
पहले से पूरे अंक को और आगे बढ़ाना |
Math.trunc |
-3.8 का दशमलव शून्य की तरफ काटना |
-3 |
नीचे वाले कदम जैसा ही नतीजा चाहना |
Math.max |
12, 9 और 15 में सबसे लंबी | 15 |
एक ऐरे थमा देना |
Math.min |
उन्हीं पट्टियों में सबसे छोटी | 9 |
वही ऐरे वाली गलती |
शून्य के दाएँ आधा कदम ऊपर चढ़ता है, इसलिए 0.5 एक बन जाता है। शून्य के बाएँ वही आधा कदम और नीचे नहीं जाता। वह धन अनंत की तरफ चलता है, इसलिए -1.5 रुकता है -1 पर, -2 पर नहीं। स्कूल में «पाँच ऊपर जाता है» ज़्यादातर धनात्मक उदाहरणों पर सुनाई देता है। नीचे की तरफ कदम अलग काम है। वह खिसकाव पर काम आएगा, लेबल पर नहीं।
चौड़ाई का लेबल
पर्ची दशमलव नहीं छापती और दुकान निकटतम पूरा सेंटीमीटर माँगती है। यह पुकार चर में 8 नहीं लिखती। बाद में वही अंक चाहिए हो तो तुम खुद रखो।
let width = 7.6;
console.log(Math.round(width));
लेबल पर 8 है। width अब भी 7.6 है, क्योंकि 8 को वापस चर में नहीं लिखा गया। अगर चौड़ाई 7.5 होती तो भी लेबल 8 होता। यही आधे का नियम -1.5 पर ले जाओ। वहाँ -2 नहीं मिलता। कदम धन दिशा में है और पूरा अंक -1 है।
let scrap = 7.2;
console.log(Math.floor(scrap));
console.log(Math.ceil(scrap));
कैंची 7 पर रुकती है। दो दसवाँ हिस्सा आठवाँ पूरा सेंटीमीटर नहीं बनता। अगर टुकड़े को बिना छेद ढकना है तो 7 छोटा पड़ जाता है और 8 खरीदना पड़ता है। अगर टुकड़ा शुरू से ही पूरा 7 होता, दोनों काम 7 पर ही रहते। दशमलव ही काट और खरीद को अलग करता है।
let nudge = -3.8;
console.log(Math.trunc(nudge));
console.log(Math.floor(nudge));
ऋण चिह्न दोनों जगह बना रहता है। यह बिना चिह्न की दूरी नहीं बनती। दशमलव काटकर शून्य की तरफ चलना -3.8 को -3 पर लाता है। नीचे की तरफ कदम शून्य के पास नहीं आ सकता। -3.8 से बड़ा न हो, ऐसा पूरा अंक -4 है। दोनों को एक समझोगे तो फ्रेम एक सेंटीमीटर इधर या उधर खिसक जाएगा।
console.log(Math.max(12, 9, 15));
console.log(Math.min(12, 9, 15));
तीन पट्टियाँ तीन अलग तर्क हैं। लंबी 15 है, छोटी 9। तीनों को एक ऐरे में बाँधकर वह एक पार्सल दे दो, तो काम पार्सल नहीं खोलता। नतीजा NaN होता है। तुलना हुई ही नहीं।
let drawer = Math.floor(Math.random() * 6) + 1;
console.log(drawer >= 1 && drawer <= 6);
console.log(Math.random() < 1);
कच्ची चिट्ठी कभी 1 को छूती नहीं। शून्य से चलती है और 1 से नीचे रहती है। छह से गुणा करो तो दायरा शून्य से लेकर 6 के नीचे तक हो जाता है। नीचे वाला पूरा अंक सिर्फ 0 से 5 छोड़ता है। उसके बाद 1 जोड़ो तो दराज 1 से 6 के बीच आ जाती है, इसलिए पहली पंक्ति हर बार सच रहती है। दूसरी पंक्ति नई चिट्ठी है, दराज का नंबर नहीं, और वह भी 1 से नीचे रहती है। 1 को उस कदम से पहले जोड़ोगे, या भूल जाओगे, तो दराज 0 या 7 पर गिरेगी।
पर्ची पर घेरा
मुँह गोल है और त्रिज्या 5 है। क्षेत्रफल π गुणा त्रिज्या गुणा त्रिज्या है। पर्ची लंबा दशमलव नहीं दिखाती। पहले पूरे अंक के पास ले जाती है, फिर वही अंक पैराग्राफ में लिखती है।
<!DOCTYPE html>
<html>
<head>
<title>math — page</title>
</head>
<body>
<p id="ticket">…</p>
<script>
let radius = 5;
let area = Math.PI * radius * radius;
let shown = Math.round(area);
let box = document.getElementById("ticket");
box.textContent = shown;
</script>
</body>
</html>
पढ़ने वाला 79 देखता है। π गुणा 25 लगभग 78.54 के पास है, और पास लाने पर 79 बनता है। 5 त्रिज्या है, 25 त्रिज्या का वर्ग। पैराग्राफ का पाठ इनमें से कोई नहीं।
डिब्बा बंद करने से पहले
पहले ऋण पक्ष जाँचो, क्योंकि वहीं दुकान बिना चेतावनी के फ्रेम बिगाड़ती है। शून्य की तरफ -3.8 रुकता है -3 पर, नीचे की तरफ -4 पर, और -1.5 से -2 नहीं बनता। बाकी एक नज़र में देखो: लेबल 8 और चर अब भी 7.6, टुकड़ा कटे 7 और ढके 8, पट्टियाँ 15 और 9, पैराग्राफ 79, और दराज 1 से 6 तभी जब 1 आखिर में जुड़े।
कोड चल जाता है, फ्रेम फिर भी गलत
Mathकोnewसे बनाना, या उसे फ़ंक्शन की तरह पुकारना-1.5को -2 पढ़ना, क्योंकि स्कूल वाला «नीचे गिरा दो» साथ आ गया-3.8पर शून्य वाला रास्ता और नीचे वाला कदम आपस में बदल देना- 12, 9 और 15 को एक ऐरे में भरकर वही ऐरे दे देना
- इस इंतज़ार में बैठना कि चिट्ठी कभी ठीक 1 के बराबर हो
- जो अंक पहले से पूरा है उसे एक और बढ़ा देना, सिर्फ इसलिए कि काम का नाम ढकना है
इस मेज़ से दिशा ले जाओ, नामों की दूसरी सूची नहीं। ऋण पर दशमलव काटना और नीचे का कदम अलग रास्ते हैं। अगला पन्ना HTML DOM है।
🧠 अपने ज्ञान की परीक्षा करें
अपने ज्ञान की परीक्षा करें
इस इंटरैक्टिव क्विज़ के साथ अपनी चुनौती लें और देखें कि आप विषय को कितनी अच्छी तरह समझते हैं
📝 निर्देश
- हर प्रश्न को ध्यान से पढ़ें
- हर प्रश्न के लिए सबसे अच्छा उत्तर चुनें
- आप जितनी बार चाहें क्विज़ दोबारा दे सकते हैं
- आपकी प्रगति शीर्ष पर दिखाई जाएगी