JavaScript -moottori - JavaScript engine
JavaScript-moottori on tietokoneohjelma, joka suorittaa JavaScript -koodin. Ensimmäiset JavaScript-moottorit olivat pelkkiä tulkkeja , mutta kaikki asiaankuuluvat nykyaikaiset moottorit käyttävät juuri oikea-aikaista kokoamista suorituskyvyn parantamiseksi.
JavaScript -moottorit ovat tyypillisesti verkkoselainten toimittajien kehittämiä, ja jokaisella suuremmalla selaimella on sellainen. Selaimessa JavaScript -moottori toimii yhdessä renderointimoottorin kanssa ja voi muokata asiakirjaobjektimallin osia .
JavaScript -moottoreiden käyttö ei rajoitu selaimiin. Esimerkiksi V8 on keskeinen osatekijä Node.js ja Deno runtime järjestelmät (ohjelmat, jotka suorittavat JS lähdekoodi).
Koska ECMAScript on JavaScriptin vakiomäärittely, ECMAScript -moottori on näiden moottoreiden toinen nimi. Kynnyksellä WebAssembly , jotkut moottorit voivat myös suorittaa tämän koodin samassa hiekkalaatikossa tavallisina JavaScript-koodia.
Historia
Brendan Eich loi ensimmäisen JavaScript -moottorin vuonna 1995 Netscape Navigator -selaimelle . Se oli alkeellinen tulkki syntyneelle kielelle, jonka Eich keksi. (Tästä kehittyi SpiderMonkey -moottori, jota Firefox -selain edelleen käyttää .)
Ensimmäinen moderni JavaScript-moottori oli V8 luoma Google sen Chrome -selain. V8 debytoi osana Chromea vuonna 2008, ja sen suorituskyky oli paljon parempi kuin mikään aiempi moottori. Keskeinen innovaatio oli juuri oikea-aikainen kokoaminen , joka voi merkittävästi parantaa suoritusaikoja.
Muiden selaintoimittajien oli uudistettava tulkkejaan kilpaillakseen. Apple kehitti Nitro -moottorin Safari -selaimeensa, jonka suorituskyky oli 30% parempi kuin edeltäjänsä. Mozilla hyödynsi Nitron osia parantaakseen omaa SpiderMonkey -moottoriaan.
Vuodesta 2017 lähtien nämä moottorit ovat lisänneet WebAss Assembly -tukea . Tämä mahdollistaa valmiiksi koottujen suoritettavien tiedostojen käyttämisen sivukomentosarjojen suorituskyvyn kannalta kriittisille osille.
Merkittäviä moottoreita
- V8 alkaen Google on eniten käytetty JavaScript-moottori. Google Chrome ja monet muut Chromium -pohjaiset selaimet käyttävät sitä, samoin kuin sovellukset, jotka on rakennettu CEF: llä , Electronilla tai muulla Chromiumia sisältävällä kehyksellä . Muita käyttötapoja ovat Node.js ja Deno runtime järjestelmiä .
- Mozilla on kehittänyt SpiderMonkeyn käytettäväksi Firefoxissa ja sen haarukoissa . GNOME Shell käyttää sitä laajennus tukea.
- JavaScriptCore on Applen Safari -selaimen moottori . Myös muut WebKit -pohjaiset selaimet käyttävät sitä. KDE: n KJS oli kehityksen lähtökohta.
- Chakra on Internet Explorer -selaimen moottori . Microsoft haarautui myös alkuperäiseen Edge- selaimeen, mutta Edge rakennettiin myöhemmin uudelleen Chromium-pohjaiseksi selaimeksi ja käyttää nyt V8: ta.