If tutorials available on this website are helpful for you, please whitelist this website in your ad blocker😭 or Donate to help us ❤️ pay for the web hosting to keep the website running.
JavaScript को हम सब web development में extensively use करते हैं, लेकिन क्या आपने कभी सोचा है कि JavaScript code को browser कैसे execute करता है? इसके पीछे काम करता है एक powerful JavaScript engine जिसे हम V8 कहते हैं।
V8 Engine Google
का JavaScript engine है जो कि Chrome browser और Node.js में use होता है। इस blog में हम V8 Engine के internal workings को समझेंगे, JIT (Just-इन-Time) compilation के concept को explore करेंगे, और समझेंगे कि JavaScript code को optimize कैसे किया जाता है।
V8 एक open-source JavaScript engine है जो Google द्वारा develop किया गया है। ये engine JavaScript को directly machine code में translate करता है, जिससे कि ये बहुत fast और efficient होता है।
पहले, JavaScript को interpretive language मन जाता था, लेकिन V8
ने इसको एक compiled language जैसा बनाके speed में काफी enhancement किया है।
●●●
V8 Engine में JavaScript code को execute करने के दो main steps होते हैं :
Parsing : सबसे पहले, JavaScript code को parse किया जाता है. इस process में code को tokens में convert किया जाता है, जिससे Abstract Syntax Tree (AST) create होता है।
Compilation : AST को compile करके machine code में convert किया जाता है, जिससे कि CPU directly उस code को execute कर सके।
JIT compilation एक advanced technique है जो V8 Engine use करता है , इसमें code को execution से पहले compile किया जाता है, लेकिन runtime के दौरान। मतलब, जैसे-जैसे code execute होता है, वैसे-वैसे V8 उस code को compile करता जाता है।
Interpreter : पहले code को interpreter के through execute किया जाता है, जो कि line-by-line code को read करता है और execute करता है।
Baseline Compiler : Interpreter के बाद, V8 एक baseline compiler use करता है जिससे code का first-level compilation होता है. यह compiled code optimized नहीं होता, लेकिन इससे execution fast हो जाता है।
Optimizing Compiler : अगर कोई code frequently execute हो रहा है, तो V8 उसको और ज़्यादा optimize कर देता है. इसके लिए एक optimizing compiler use होता है, जो कि code को deeply analyze करके उसकी performance को enhance करता है।
function add(a, b) {
return a + b;
}
for (let i = 0; i < 1000000; i++) {
add(10, 20);
}
इस example में, add function को 1 million बार call किया जाता है. V8 Engine इस function को initially interpret करेगा, लेकिन जैसे-जैसे function बार-बार call होता है, V8 उसको optimize करने लगेगा ताकि ये faster execute हो सके।
V8 Engine में optimization के साथ-साथ एक process होता है जो deoptimization
कहलाता है। अगर कोई optimized code expected performance नहीं दे रहा या unexpected behavior show कर रहा है, तो V8 उस code को deoptimize करके दुबारा से interpret करना शुरू कर देता है।
V8 में एक और important feature है Garbage Collection . इसका काम है memory को efficiently manage करना. अगर कोई object या variable use में नहीं है, तो Garbage Collector उसकी memory free कर देता है।
V8 mark-and-sweep algorithm का use करता है Garbage Collection के लिए।
●●●
JavaScript V8 Engine एक powerful tool है जो JavaScript code को efficiently execute करता है। JIT Compilation, code optimization, और garbage collection जैसे features कि वजह से ये JavaScript को एक high-performance language बना देता है।
अगर आपको JavaScript कि deeper understanding चाहिए तो V8 Engine को समझना important है।
Loading ...