這篇文章主要介紹“javascript的解釋器有什么作用”,在日常操作中,相信很多人在javascript的解釋器有什么作用問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”javascript的解釋器有什么作用”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
定南ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書(shū)銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書(shū)合作)期待與您的合作!
javascript解釋器又稱“JavaScript引擎”,是一個(gè)專門(mén)處理JavaScript腳本的虛擬機(jī),一般會(huì)附帶在網(wǎng)頁(yè)瀏覽器之中;JavaScript解釋器有四個(gè)組成部分:詞法分析器、句法解析器、字節(jié)碼生成器、字節(jié)碼解釋器。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
javascript解釋器是什么
JavaScript是一門(mén)腳本語(yǔ)言,是需要被別人解釋執(zhí)行的,這個(gè)別人就是JavaScript解釋器。它讀取一條JS語(yǔ)句、翻譯、執(zhí)行,然后再讀取下一條JS語(yǔ)句,周而復(fù)始。
JavaScript解釋器又名JavaScript引擎,是一個(gè)專門(mén)處理JavaScript腳本的虛擬機(jī),一般會(huì)附帶在網(wǎng)頁(yè)瀏覽器之中。其作用是執(zhí)行JavaScript源碼。
JavaScript解析引擎就是能夠“讀懂”JavaScript代碼,并準(zhǔn)確地給出代碼運(yùn)行結(jié)果的一段程序。
JavaScript解釋器的組成
JavaScript解釋器有四個(gè)組成部分:詞法解析器、句法解析器、字節(jié)碼生成器、字節(jié)碼解釋器。
詞法解析器
它可以讓一行行代碼源碼拆分成一個(gè)個(gè)最小的詞義單位。所謂的詞義單位就是在語(yǔ)法上不能再分,最小的單個(gè)字符或者字符組合。
var number = 2; //解析成下面的json格式 [ { 'type':'keyword', 'value':'var' }, { 'type':'identifier', 'value':'number', }, { 'type':'Punctuator', 'value':'=', }, { 'type':'Numeric', 'value':'2', } { 'type':'Punctuator', 'value':';' } ]
句法分析器
將上面的分析出來(lái)的數(shù)組,根據(jù)語(yǔ)法規(guī)則,轉(zhuǎn)換為抽象語(yǔ)法樹(shù),用Esprimas解析工具可以知道也轉(zhuǎn)換成了json格式。
這個(gè)抽象語(yǔ)法樹(shù)有什么用呢?
人家說(shuō)壓縮優(yōu)化代碼,這我又不懂了,然后又說(shuō)編譯器、IDE等都有很多用處(現(xiàn)在沒(méi)有辦法去深入技能不夠)
在美團(tuán)點(diǎn)評(píng)技術(shù)中看到了語(yǔ)法樹(shù)可以用來(lái)重構(gòu)javaScript代碼
字節(jié)碼生成器
它的作用呢就是把語(yǔ)法樹(shù)轉(zhuǎn)換為javaScript引擎能讀懂和執(zhí)行的的二進(jìn)制代碼。
每種javascript引擎都有自己的字節(jié)碼格式,最簡(jiǎn)單的做法就是把語(yǔ)義單位翻譯成二進(jìn)制
字節(jié)碼解釋器
當(dāng)然這個(gè)一環(huán)跟一環(huán)的,有了二進(jìn)制代碼了,那么接下來(lái)就是執(zhí)行二進(jìn)制代碼咯,產(chǎn)生了你可以用眼睛看到的結(jié)果咯。
到此,關(guān)于“javascript的解釋器有什么作用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!