मैं जावा स्क्रिप्ट के लिए नया हूँ। वेब ब्राउजर के कंसोल में, मैंने नीचे दी गई चीजों को देखा।

"" - 1 + 0 = -1
"4" - 2 = 2
"4px" - 2 = NaN
" -9\n" - 5 = -14

मैं समझ गया था कि जोड़ को छोड़कर गणितीय संक्रियाओं को करते समय तारों को संख्याओं में बदल दिया जाएगा। तीसरे ऑपरेशन में, "पीएक्स" की वजह से "4 पीएक्स" वैध संख्या नहीं है। तो परिणाम NaN निकला। लेकिन मुझे समझ में नहीं आया कि कैसे "-9\n" को -9 में परिवर्तित किया जाता है, भले ही "\n' मौजूद हो।

यह एक साधारण प्रश्न हो सकता है। लेकिन मैं इसका कारण नहीं समझ पा रहा हूं। क्या कोई कृपया मुझे बता सकता है कि क्या मुझे कुछ याद आ रहा है?

1
kadina 28 मार्च 2018, 22:18

3 जवाब

सबसे बढ़िया उत्तर

\n न्यूलाइन कैरेक्टर के लिए एस्केप सीक्वेंस है। जब आप "एंटर" कुंजी दबाते हैं तो आपको यही मिलता है।

उदाहरण के लिए, नीचे cat और dog के बीच एक \n है।

cat
dog

यदि आप " 9 " + 0 करते हैं तो आपको 9 मिलेगा क्योंकि किसी संख्या में परिवर्तित होने पर जावास्क्रिप्ट आसपास के रिक्त स्थान को अनदेखा कर देगा। यहां भी ऐसा ही होता है क्योंकि न्यूलाइन को व्हाइटस्पेस माना जाता है।

3
Max 28 मार्च 2018, 19:22

एक स्ट्रिंग में '\n' को कई प्रोग्रामिंग भाषाएं (यदि सभी नहीं) एक नए लाइन कैरेक्टर के रूप में समझती हैं।

इसका मतलब है? यदि आप उदाहरण के लिए अपनी स्ट्रिंग में \n डालते हैं:

var fruits = "apple \nbanana \norange"

console.log(fruits) द्वारा मुद्रित अंतिम परिणाम इस तरह दिखेगा:

apple
banana
orange

आप विकिपीडिया पर इस लेख पर अधिकांश बच निकलने के क्रम पा सकते हैं (शीर्षक के बारे में चिंता न करें यह ज्यादातर काम करता है) अन्य भाषाओं में भी)

0
Soveu 28 मार्च 2018, 19:39

मुझे लगता है कि आप बस एक एस्केप कैरेक्टर अनुक्रम में हुए हैं जो "-9 \ n" को स्वचालित रूप से एक संख्या में परिवर्तित करने की अनुमति देता है। वर्ण अनुक्रम "\n" अधिकांश भाषाओं (जावास्क्रिप्ट शामिल) में एक नई पंक्ति का प्रतिनिधित्व करता है, और इसलिए इसे व्हाइटस्पेस की तरह माना जाता है। इसका मतलब यह भी है कि टैब के लिए "\t" और रिटर्न/न्यूलाइन के लिए "\r" को समान रूप से अनदेखा किया जाता है।

> "-2\n" - 2
-4
> "-2\t" - 2
-4
> "-2\r" - 2
-4

लेकिन जैसे ही आप एक पत्र के साथ परीक्षण करते हैं जो व्हाइटस्पेस (टैब, न्यूलाइन, आदि) के लिए बचने का अनुक्रम नहीं है, या बचने वाले बैकस्लैश को हटा दें, इसे एक पत्र के रूप में पहचाना जाता है और इसका मूल्यांकन NaN होने के लिए किया जाता है।

> "-2\a" - 2
NaN
> "-2n" - 2
NaN
3
Stephen Gheysens 28 मार्च 2018, 19:29