जावास्क्रिप्ट इंजन

एक जावास्क्रिप्ट इंजन एक सॉफ्टवेयर घटक है जो जावास्क्रिप्ट स्रोत कोड को निष्पादित करता है। पहला जावास्क्रिप्ट सॉफ्टवेयर इंजन मात्र दुभाषिया (कंप्यूटिंग) था, लेकिन सभी प्रासंगिक आधुनिक इंजन बेहतर प्रदर्शन के लिए समय-समय पर संकलन का उपयोग करते हैं। जावास्क्रिप्ट इंजन आमतौर पर वेब ब्राउज़र विक्रेताओं द्वारा विकसित किए जाते हैं, और प्रत्येक प्रमुख ब्राउज़र में एक होता है। ब्राउज़र में, जावास्क्रिप्ट इंजन दस्तावेज़ ऑब्जेक्ट मॉडल के माध्यम से ब्राउज़र इंजन के साथ मिलकर चलता है।

जावास्क्रिप्ट इंजन का उपयोग ब्राउज़रों तक ही सीमित नहीं है। उदाहरण के लिए, V8 (जावास्क्रिप्ट इंजन) Node.js और Deno (सॉफ्टवेयर) रनटाइम सिस्टम का एक मुख्य घटक है।

चूंकि ECMAScript जावास्क्रिप्ट का मानकीकृत विनिर्देश है, ECMAScript इंजन इन इंजनों का दूसरा नाम है। WebAssembly के आगमन के साथ, कुछ इंजन इस कोड को उसी सैंडबॉक्स (कंप्यूटर सुरक्षा) में नियमित जावास्क्रिप्ट कोड के रूप में निष्पादित कर सकते हैं।

इतिहास
नेटस्केप नेविगेटर वेब ब्राउज़र के लिए 1995 में ब्रेंडन ईच द्वारा पहला जावास्क्रिप्ट इंजन बनाया गया था। ईच द्वारा आविष्कृत नवजात भाषा के लिए यह एक अल्पविकसित दुभाषिया (कंप्यूटिंग) था। (यह मकड़ी बंदर इंजन में विकसित हुआ, जो अभी भी फ़ायरफ़ॉक्स ब्राउज़र द्वारा उपयोग किया जाता है।)

पहला आधुनिक जावास्क्रिप्ट इंजन V8 (जावास्क्रिप्ट इंजन) था, जिसे Google ने अपने Google Chrome ब्राउज़र के लिए बनाया था। V8 को 2008 में क्रोम के हिस्से के रूप में पेश किया गया था, और इसका प्रदर्शन किसी भी पूर्व इंजन से काफी बेहतर था। मुख्य नवाचार समय-समय पर संकलन था, जो निष्पादन समय में काफी सुधार कर सकता है।

प्रतिस्पर्धा करने के लिए अन्य ब्राउज़र विक्रेताओं को अपने दुभाषियों को ओवरहाल करने की आवश्यकता थी। Apple Inc. ने अपने Safari (वेब ​​ब्राउज़र) ब्राउज़र के लिए WebKit#JavaScriptCore इंजन विकसित किया, जिसका प्रदर्शन अपने पूर्ववर्ती की तुलना में 30% बेहतर था। mozilla ने अपने स्वयं के स्पाइडरमोन्की इंजन को बेहतर बनाने के लिए नाइट्रो के कुछ हिस्सों का लाभ उठाया। 2017 से, इन इंजनों ने WebAssembly के लिए समर्थन जोड़ा है। यह पृष्ठ स्क्रिप्ट के प्रदर्शन-महत्वपूर्ण भागों के लिए पूर्व-संकलित निष्पादनयोग्य के उपयोग को सक्षम करता है।

उल्लेखनीय इंजन

 * Google का V8 (जावास्क्रिप्ट इंजन) सबसे अधिक इस्तेमाल किया जाने वाला जावास्क्रिप्ट इंजन है। Google क्रोम और कई अन्य क्रोमियम (वेब ​​​​ब्राउज़र)-आधारित ब्राउज़र इसका उपयोग करते हैं, जैसा कि क्रोमियम एंबेडेड फ्रेमवर्क, इलेक्ट्रॉन ([[सॉफ्टवेयर ढांचा)]], या क्रोमियम को एम्बेड करने वाले किसी अन्य सॉफ़्टवेयर फ्रेमवर्क के साथ बनाया गया अनुप्रयोग प्रक्रिया सामग्री करता है। अन्य उपयोगों में Node.js और Deno (सॉफ़्टवेयर) रनटाइम सिस्टम शामिल हैं।
 * स्पाइडरमोन्की मोज़िला द्वारा फ़ायरफ़ॉक्स और इसके फोर्क (सॉफ्टवेयर विकास) में उपयोग के लिए विकसित किया गया है। गनोम शैल इसे विस्तार समर्थन के लिए उपयोग करता है।
 * JavaScriptCore Apple Inc. का उसके Safari (वेब ​​ब्राउज़र) ब्राउज़र के लिए इंजन है। अन्य वेबकिट-आधारित ब्राउज़र भी इसका उपयोग करते हैं। केडीई से केजेएस (सॉफ्टवेयर) इसके विकास के लिए शुरुआती बिंदु था।
 * चक्र (जेस्क्रिप्ट इंजन) इंटरनेट एक्सप्लोरर ब्राउज़र का इंजन है। इसे Microsoft द्वारा मूल Microsoft एज ब्राउज़र के लिए भी फोर्क किया गया था, लेकिन एज को बाद में क्रोमियम-आधारित ब्राउज़र के रूप में फिर से बनाया गया था और इस प्रकार अब V8 का उपयोग करता है।