2012-05-26 13 views
9

के बाद node.js हैलो वर्ल्ड उदाहरण में अपरिभाषित क्यों मैंने node.js के साथ शुरू किया। तो हैलो वर्ल्ड उदाहरण node.js beginner book के साथ शुरू करने के लिए। जब मैं console.log("Hello world"); आदेश टाइप करता हूं। कंसोल पर इसका प्रिंट हैलो वर्ल्ड। यही कारण है कि मैं इस कोड से लेकिन अगली पंक्ति में उम्मीद अपने भी प्रिंट undefinedकंसोल.लॉग

मैं खिड़कियों के लिए इस लिंक से NodeJS स्थापित installation of nodejs for windows

यहाँ नीचे

इस

enter image description here

+0

जावास्क्रिप्ट फ़ंक्शन को कुछ भी वापस करना होगा ताकि जब मैं console.log ("हैलो वर्ल्ड") का उपयोग करता हूं, तो यह अनिर्धारित हो जाता है; वापसी; यह प्रिंट अपरिभाषित – rahularyansharma

+1

प्रिंट नहीं करता है नोड शैल जो भी आप इनपुट करते हैं, उसके रिटर्न वैल्यू को आउटपुट करता है, इस मामले में, अपरिभाषित। –

उत्तर

14

के लिए भी स्क्रीनशॉट है प्रत्येक जावास्क्रिप्ट फ़ंक्शन कुछ देता है। जब आप इस तरह समारोह को परिभाषित:

function test() { 
    var x = 1; 
} 

तो test() रिटर्न undefined। यह console.log फ़ंक्शन पर लागू होता है। यह क्या करता है कि यह प्रदर्शन के लिए तर्क पास करता है। और बस यही। इस प्रकार यह undefined देता है।

अब नोड जेएस शैल इस तरह से काम करता है कि जब भी आप कोई फ़ंक्शन, चर, इत्यादि इनपुट करते हैं तो यह उस मान को प्रदर्शित करता है जो इसे लौटाता है। इस प्रकार console.log('Hello world!'); स्क्रीन पर Hello world! पास करता है और undefined देता है, जो तब नोड जेएस खोल प्रदर्शित करता है।

यह कम या ज्यादा काम करता है।

+0

जब मैं 'c (c in {}) {} टाइप करता हूं, 'नोड कंसोल में मुझे अभी भी' अपरिभाषित 'मिलता है। मुझे पूरा यकीन है कि 'for' एक समारोह नहीं है। इसलिए मुझे संदेह है कि आपका उत्तर गलत है या कम से कम अधूरा है। –

+1

इस देर प्रतिक्रिया के लिए खेद है, पूरी तरह से टिप्पणी छोड़ दिया। वैसे भी यह सभी अभिव्यक्तियों पर लागू होता है। प्रत्येक जावास्क्रिप्ट अभिव्यक्ति (न केवल फ़ंक्शंस) कुछ लौटाती है, भले ही प्रत्येक परिणाम किसी चर को असाइन नहीं किया जा सके। – freakish

संबंधित मुद्दे