做乙個好前端必須要知道的事 JS語言

2021-09-17 02:12:32 字數 689 閱讀 2546

程式語言按各種方法可以分為各種型別,現在讓我們來看看js屬於什麼型別語言

按編譯執行過程,可以分為編譯型語言和解釋型語言。比如

⚠️注意:解釋型語言也是需要編譯的。區分編譯型語言和解釋型語言,是看源**是否整個編譯成目標**然後執行還是編譯一段執行一段。

對於傳統編譯型語言來說,編譯步驟分為:詞法分析、語法分析、語義檢查、**優化和位元組生成。

但對於解釋型語言來說,通過詞法分析和語法分析得到語法樹後,就可以開始解釋執行了(根據語法樹和符號表生成機器碼)。

這也就解釋了為什麼都說 js 是解釋執行的,讀一句執行一句,但是實際上 js 中還沒執行到的**語法錯誤導致整個 js 不會執行的問題。例如:

console.log(

'不會被console出來');

= // 這裡的語法錯誤導致了上面的**也不會執行

其實js變數提公升的現象也很明顯的證明了js是先編譯而後執行的

在瀏覽器中,多個‹script›標籤中的 js **,是分段編譯的(所以,某乙個‹script›標籤中的語法錯誤不會導致另乙個‹script›中的**不執行)但是全域性物件是共享的。

按語言按變數的型別在編譯時確定還是執行時確定可以分為靜態語言和動態語言。比如

按變數的型別是否在執行時可以改變分為強型別語言和弱型別語言。比如

按語言正規化可以分為宣告式、命令式、函式式語言。

sizeof必須要知道的那些事

sizeof對於大多數人來說是即熟悉由陌生的。熟悉是指大家基本都用過,也知道sizeof是操作符不是函式 陌生就是指sizeof在計算自定義型別的時候,會涉及記憶體對齊方式,返回結果往往與我們想的大相徑庭。本文就是結合記憶體對齊方式來介紹如何求sizeof的返回值。先來做個測試,各位看官如能準確說出...

關於python物件必須要知道的事

標籤的傳遞不改變物件的記憶體位址,物件可大致分為內建物件,組織物件和結構物件 python內建物件 最小個體 他們是構成其他物件的基礎,這也是計算機存在的基礎。a 256b a print id a print id b 第一次結果 用reset釋放變數後 這是第二次結果 組織物件 關於個體的關係 ...

外鏈代發你必須要知道的事

過去,所有的站長都認同 seo的乙個 真理 內容為王,外鏈為皇。但隨著最近幾年對內容的注重,對外鏈的打壓,外鏈的作用越來越小。而最先飽受其衝的除了各站長外,就是各外鏈代發產業了,相信為了扳回不利局面,這些代發大神也拼了命的想法子,最具有代表性的就是這句話了 外鏈的作用越來越小,說明外鏈的質量越來越重...