2011-07-11 13 views
84

के लिए जांचें मुझे पुस्तकालय में चल रहे वर्तमान नोड संस्करण को प्रोग्रामेटिक रूप से एक्सेस करने की आवश्यकता है। दस्तावेज़ों में यह प्रतीत नहीं हो रहा है।वर्तमान नोड संस्करण

उत्तर

18

Number(process.version.match(/^v(\d+\.\d+)/)[1])

अगर process.version 'v0.11.5' है, तो मिल 0.11 (संख्या)।

+4

[नोड semver] (https://github.com/npm/node-semver) पुस्तकालय बहुत उपयोगी हो सकता है इसके लिए। – beeman

+0

ओह हाँ, 'नोड-सेमवर' एक बेहतर सॉल्शन – alsotang

+0

अचानक इस तरह से 0.10 0.1 > process.version ' v0.10.40 ' > संख्या (process.version.match (/^v (\ d + \। \ डी +) /) [1]) 0.1 –

12

दरअसल process.versions ऑब्जेक्ट का उपयोग करना बेहतर होगा जो विभिन्न नोड घटकों के लिए बहुत से संस्करण प्रदान करता है। उदाहरण:

{ http_parser: '2.5.2', node: '4.4.3', v8: '4.5.103.35', uv: '1.8.0', zlib: '1.2.8', ares: '1.10.1-DEV', icu: '56.1', modules: '46', openssl: '1.0.2g' }

10

उपयोग semver तुलना करने के लिए process.version:

const semver = require('semver'); 

if (semver.gte(process.version, '0.12.18')) { 
    ... 
} 
संबंधित मुद्दे