javascript不是編譯型語言,而是解釋型的程式語言。 javascript原始碼在發送到客戶端運行之前不需經過編譯,而是將文字格式的字元程式碼傳送給瀏覽器由瀏覽器解釋運行。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
javascript不是編譯型語言,而是解釋型或即時編譯型的程式語言。
編譯是將原始程式翻譯成可執行的目標程式碼,翻譯與執行是分開的;而解釋是對原始程式的翻譯與執行一次完成,不產生可儲存的目標程式碼。
JavaScript(簡稱「JS」) 是一種具有函數優先的輕量級,解釋型或即時編譯型的程式語言;JavaScript是在程式的運行過程中逐行進行解釋。
JavaScript的原始程式碼在發送到客戶端運行之前不需經過編譯,而是將文字格式的字元程式碼傳送給瀏覽器由瀏覽器解釋執行。直譯語言的弱點是安全性較差,而且在JavaScript中,如果一條運行不了,那麼下面的語言也無法運作。而其解決方法就是於使用try{}catch(){},其中,catch()中會傳入錯誤訊息。
console.log("a");//这是正确的 console.log("b");//这是正确的 console.logg("c");//这是错误的,并且到这里会停下来 console.log("d");//这是正确的 console.log("e");//这是正确的 /*解决办法*/ try{console.log("a");}catch(e){}//这是正确的 try{console.log("b");}catch(e){}//这是正确的 try{console.logg("c");}catch(e){}//这是错误的,但是到这里不会停下来,而是跳过 try{console.log("d");}catch(e){}//这是正确的 try{console.log("e");}catch(e){}//这是正确的
JavaScript被歸類為直譯語言,因為主流的引擎都是每次執行時載入程式碼並解譯。 V8是將所有程式碼解譯後再開始運行,其他引擎則是逐行解譯(SpiderMonkey會將解譯過的指令暫存,以提高性能,稱為實時編譯),但由於V8的核心部分多數用JavaScript撰寫(而SpiderMonkey是用C ),因此在不同的測試上,兩者效能互有優劣。與其相對應的是編譯語言,例如C語言,以編譯語言編寫的程式在運行之前,必須經過編譯,將程式碼編譯為機器碼,再加以執行。
編譯型語言VS 解釋型語言
#1、與電腦的溝通方式不同
解釋程式不產生目標程式碼,它逐條地取出原始程式中的語句,邊解釋,邊執行;解釋器把原始碼檔案邊解釋成機器語言邊交給CPU執行。
編譯是將原始程式翻譯成可執行的目標程式碼,執行可執行程式文件,翻譯與執行是分開的。
2、運行速度
解釋程式運行效率低,所有的程式碼均需經過解釋器邊解釋變執行,速度比編譯型慢很多
編譯程式執行速度快,因為你的程式碼已經翻譯成了是電腦可以理解的機器語言。
【相關推薦:javascript學習教學】
#以上是javascript是編譯語言嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!