Теперь есть несколько вилок nodejs, а некоторые из них поддерживают движки JavaScript, отличные от движка V8 от Google.Как обнаружить из nodejs, на котором работает JavaScript-движок?
Для моего кода узла, чтобы увидеть, какой JS-движок работает под ним, что в настоящее время лучший способ?
Двигатели Я в курсе являются:
- компании Google V8 - единственный двигатель поддерживается официальным node.js и iojs вилки. Один из двигателей, поддерживаемый JXcore.
- Mozilla's SpiderMonkey - Один из двигателей, поддерживаемый JXcore.
- от Microsoft ChakraCore - двигатель поддерживается порт Microsoft «s из Node.js и по-видимому один из двигателей, поддерживаемых JXcore хотя я не получил, что один работать еще.
(I've asked a separate question about detecting which fork of nodejs is being used. Этот вопрос только об обнаружении двигателя JS.)
Поля в объектах 'process' и' versions' на самом деле имеют разные поля между портами nodejs. Я хочу документировать различия в ответе, но до сих пор я не могу сравнивать nodejs MS с ChakraCore против JXcore с Chakra, поскольку я не могу узнать [как использовать последний в Windows 7] (http://stackoverflow.com/вопросы/35055401). – hippietrail
JXcore также сохраняет номера версии двигателя в 'process.versions'. В настоящее время это либо 'v8',' sm' (SpiderMonkey), либо 'ch' (Chakra). – infografnet