JavaScript mühərriki

JavaScript mühərrikiJavaScript kodunu icra edən proqram komponenti. İlk JavaScript mühərrikləri sadəcə interpretator idi, lakin bütün müvafiq müasir mühərriklər təkmilləşdirilmiş performans üçün JIT kompilyasiyasından istifadə edir.[1]

JavaScript mühərrikləri adətən veb-brauzer tərtibatçıları tərəfindən hazırlanır və hər bir brauzerdə mövcud olur. Brauzerdə JavaScript mühərriki Document Object Model vasitəsilə render mühərriki ilə birgə işləyir.

JavaScript mühərriklərinin istifadəsi brauzerlərlə məhdudlaşmır. Məsələn, V8 mühərriki Node.jsDeno iş mühiti sistemlərinin əsas komponentidir.

ECMAScript JavaScript-in standartlaşdırılmış spesifikasiyası olduğundan, ECMAScript mühərriki bu mühərriklər üçün başqa bir addır. WebAssembly-in gəlişi ilə bəzi mühərriklər bu kodu adi JavaScript kodu ilə eyni sandbox-da icra edə bilər.

İlk JavaScript mühərriki Brendan Eyx tərəfindən 1995-ci ildə Netscape Navigator veb-brauzeri üçün yaradılmışdır. Bu, Eyxin icad etdiyi yeni yaranan dil üçün ilkin interpretator idi. Daha sonra bu, hələ də Firefox brauzeri tərəfindən istifadə edilən SpiderMonkey mühərrikinə çevrildi.

İlk müasir JavaScript mühərriki Google tərəfindən Chrome brauzeri üçün yaradılmış V8 idi. V8 2008-ci ildə Chrome-un bir hissəsi kimi debüt etdi və onun performansı mövcud mühərriklərdən daha yaxşı idi.[2][3] Əsas yenilik icra müddətlərini əhəmiyyətli dərəcədə yaxşılaşdıra bilən JIT kompilyasiyası idi.

Digər brauzerlər rəqabət aparmaq üçün interpretatorlarını əsaslı inkişaf etdirməli idilər.[4] Apple, 30% daha yaxşı performansa malik olan Safari brauzeri üçün Nitro mühərrikini inkişaf etdirdi.[5] Mozilla öz SpiderMonkey mühərrikini təkmilləşdirmək üçün Nitro-nun hissələrini istifadə edirdi.[6]

2017-ci ildən bu mühərriklər WebAssembly üçün dəstək əlavə edib. Bu, səhifə skriptlərinin performans baxımından kritik hissələri üçün əvvəlcədən tərtib edilmiş icra sənədlərindən istifadə etməyə imkan verir.

Məşhur mühərriklər

redaktə
  • Google-un V8 mühərriki ən çox istifadə edilən JavaScript mühərrikidir. Google Chrome və bir çox digər Chromium əsaslı brauzerlər, CEF, Electron və ya Chromium-u istifadə edən hər hansı digər freymvork ilə qurulmuş proqramlar ondan istifadə edir. Node.jsDeno iş mühitləri də V8 istifadə edir.
  • SpiderMonkey Firefox və onun forklarında istifadə üçün Mozilla tərəfindən hazırlanmışdır. GNOME Shell onu uzantı dəstəyi üçün istifadə edir.
  • JavaScriptCore Apple-ın Safari brauzeri üçün hazırladığı mühərrikdir. Digər WebKit əsaslı brauzerlər və Bun iş mühiti də ondan istifadə edir. KDE-dən KJS onun inkişafı üçün başlanğıc nöqtəsi idi.[7]
  • Chakra Internet Explorer brauzerinin mühərrikidir. O, həmçinin Microsoft tərəfindən orijinal Edge brauzeri üçün hazırlanmışdır, lakin Edge daha sonra Chromium əsaslı brauzer kimi yenidən quruldu və hal-hazırda V8 istifadə edir.[8][9]

İstinadlar

redaktə
  1. Looper, Jen. "A Guide to JavaScript Engines for Idiots". Telerik Developer Network. 2015-09-21. 2018-12-08 tarixində arxivləşdirilib. İstifadə tarixi: 2018-12-08.
  2. "Big browser comparison test: Internet Explorer vs. Firefox, Opera, Safari and Chrome". PC Games Hardware. Computec Media AG. 2012-05-02 tarixində orijinalından arxivləşdirilib. İstifadə tarixi: 2010-06-28.
  3. "Lifehacker Speed Tests: Safari 4, Chrome 2". Lifehacker. 2021-02-14 tarixində arxivləşdirilib. İstifadə tarixi: 2010-06-28.
  4. "Mozilla asks, 'Are we fast yet?'". Wired. 22 June 2018 tarixində arxivləşdirilib. İstifadə tarixi: 18 January 2019.
  5. "Safari 5 Released". 2022-02-13 tarixində arxivləşdirilib. İstifadə tarixi: 2023-12-13.
  6. Shankland, Stephen. "Opera 10.5 brings new JavaScript engine". CNET. CBS Interactive. 2010-03-02. 2013-10-03 tarixində orijinalından arxivləşdirilib. İstifadə tarixi: 2012-01-30.
  7. Stachowiak, Maciej. "Companies and Organizations that have contributed to WebKit". WebKit Wiki. November 9, 2008. May 17, 2019 tarixində arxivləşdirilib. İstifadə tarixi: April 13, 2019.
  8. Belfiore, Joe, New year, new browser – The new Microsoft Edge is out of preview and now available for download, Microsoft, 2020-01-15, 2020-04-26 tarixində arxivləşdirilib, İstifadə tarixi: 2023-12-13
  9. "Microsoft Edge and Chromium Open Source: Our Intent". Microsoft Edge Team. 6 December 2018. 8 April 2020 tarixində arxivləşdirilib. İstifadə tarixi: 8 December 2018.

Xarici keçidlər

redaktə