JavaScript'in bir web tarayıcısı ortamında nasıl yürütüldüğünü daha iyi anlamaya çalışıyorum.Bir Web Tarayıcı Ortamında yürütüldüğünde JavaScript kodlanmış mı?
Node.js açısından, bir Node.JS programında yazılan JavaScript kodunun C++ kodu (V8) ile derlendiğini ve sonuçta makine kodu haline geldiğini anlıyorum. Node.js dosya sistemi ve diğer makine düzeyindeki görevlerle etkileşime girebileceğinden, bana neden sonunda makine kodu haline gelmesi gerektiğini anlamış olur.
Web tarayıcısı ortamı hakkında farklı hissediyorum. Anlayışımdan asıl amaç DOM ile etkileşim kurmaktır. JavaScript'in DOM ile etkileşimde bulunmak için makine koduna derlenmesi gerekiyor mu?
Buna şaşkınım. Node.js ve Chrome, V8'de çalışır. V8, C++ 'da yazılmıştır ve benim bildiğim kadarıyla, bir işlemcinin anlayabileceği makine koduna JavaScript kodu derler.
ECMA-262'yi uygulamak için bir motor motoruna ihtiyacınız var, yani bir motorun tüm amacı (bence?). Ancak, bir web tarayıcısının bir Makine Dil Seviyesine derlenebilmesi için JavaScript'e ihtiyacı var mı, hangi makine işlemlerini gerçekleştiriyor? İşte
Ben araştırdık birkaç makale vardır, ne yazık ki, onlarda benim soruya bir cevap bulamadı:
Sorunuza tam bir cevabım yok, ancak bu tarayıcıya en azından bağlı olacak ve hangi js motoru kullanıyor. Çoğu büyük oyuncunun kendine özgü motorları veya en azından mevcut motorların kendi çatalları vardır. –
Kim bilir? Belki öyle, belki de değil. Modern JavaScript çalışma zamanları gerçekten küçük kod parçalarını yerel ikili formda derleyebilir. Programın anlatacak bir yolu yok. Neden fark eder? – Pointy
Ve evet, Jaromanda X'in dediği gibi, Node'un nasıl çalıştığı konusunda tamamen yanılıyorsunuz. – Pointy