Как мой код node.js может увидеть, работает ли он под официальными nodejs, iojs, jxcore или node-chakracore?
В настоящее время существует несколько разветвлений nodejs по разным причинам.
Для моего кода узла, чтобы увидеть, под каким форком он работает, каков в настоящее время лучший способ?
Я знаю о вилках:
- Официальный релиз nodejs
- iojs - я полагаю, что теперь он устарел, так как присоединился к официальному nodejs, но все еще представляет интерес
- JXcore - форк, который поддерживает несколько процессоров / ядро; несколько JS-движков, включая V8, Mozilla SpiderMonkey и Microsoft ChakraCore; и упаковка js-приложений, так что пользователям не нужно использовать npm
- Разветвление nodejs от Microsoft, использующее движок ChakraCore JS их Edge-браузера, через совместимость с V8
( Я также задал сопутствующий вопрос об обнаружении, какой движок JS используется. Этот вопрос только об определении, какой форк используется.)
1 ответ
NodeJS и iojs могут быть проверены с помощью process.release:
name: строка со значением, которое всегда будет 'node' для Node.js. Для старых версий io.js это будет io.js.
Что касается JXcore, вы можете использовать либо process.jxversion
или же typeof jxcore !== 'undefined'