Как мой код 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'

Другие вопросы по тегам