Şimdi en güvenilir çözüm, node -h
numaralı uygulamayı çalıştırmak ve iojs.org
alt dizesi içerip içermediğine bakmaktır. Eğer varsa - bu iojs
var:
function isIojs(callback) {
require('child_process').exec(process.execPath + ' -h', function(err, help) {
return err ? callback(err) : callback(null, /iojs\.org/.test(help));
});
}
böyle bir yaklaşımın büyük eksi - bu asenkron bu. Bu yüzden işi basitleştiren küçük bir kütüphane yazdım: is-iojs.
Açıkçası: Kimin ne zaman sürüm 1 ne zaman yayınlanacağını bilen, belki de asla.
var isIojs = parseInt(process.version.match(/^v(\d+)\./)[1]) >= 1;
Ayrıca
process.execPath
dize kontrol edebilirsiniz, ancak bu yaklaşım olarak bildiğim kadarıyla pencereler için işleryapanlara değil: Ben sadece
process.version
dayalı şimdi belirlenmesi için düşünüyorum yeterlidir.
Bu soruyu şimdi buldum ama birkaç gün önce benzer bir şey sordum ama [nodejs, iojs, jxcore ve ChakraCore js motoruyla düğümün Microsoft çatalını belirleme] (http://stackoverflow.com/ sorular/35037072). – hippietrail