JavaScript初步學習筆記

2020-08-12 11:48:09

JS學習網頁

一、JavaScript簡介

1、JavaScript可以在網頁上實現複雜的功能,網頁展現給你的不再是簡單的靜態資訊,而是實時的內容更新,卷動播放的視訊等。
2、Web技術蛋糕三層
在这里插入图片描述
以文字標籤爲例。首先用HTML將文字標記,賦予它結構和目的;之後再爲它加一點CSS讓它更好看;最後,爲它加上JS來實現動態行爲(如爲事件新增響應)。
3、在HTML和CSS集合組裝成一個網頁後,瀏覽器的JS引擎將執行JS程式碼。這保證了當JS開始執行之前,網頁的結構和樣式已經就位。因爲JS最普遍的用處是通過DOM API動態修改HTML和CSS來更新用戶介面。如果JS在HTML和CSS就位之前載入執行,就會引發錯誤。
4、解釋(interpret)程式碼vs編譯(compile)程式碼
在直譯語言中,程式碼自上而下執行,且實時返回執行結果。而編譯型語言需要先將程式碼轉化成另一種形式才能 纔能執行,比如C語言先被編譯成彙編語言,然後才能 纔能由計算機執行,此時程式將以二進制的格式執行。
JS是輕量級直譯語言。瀏覽器接收到JS程式碼,並以程式碼自身的文字格式執行它。其運用即時編譯(just-in-time compiling)技術,當JS被執行時,它會被編譯成二進制的格式,使程式碼執行速度更快。但JS仍爲一門直譯語言,因爲編譯過程發生在程式碼執行中,而非之前。
5、向頁面新增JavaScript
(1)內部JS
在HTML檔案的<body>結束前插入以下程式碼:
在这里插入图片描述
在< script>元素中新增一些JS程式碼,這個頁面就能做一些動態的事情。
(2)外部JS
首先在HTML檔案所在的目錄下建立一個名爲script.js檔案,確保擴充套件名爲.js。
之後將< script>元素替換爲:
<script src=「script.js」 async>< /script>
在script.js檔案中,新增指令碼。
將JS寫進外部檔案會使程式碼更加有序,更易於複用,且沒有了指令碼的混合,HTML也會更易閱讀。
6、async(非同步的:asynchronous)和defer
瀏覽器遇到async指令碼時不會阻塞頁面渲染,而是直接下載然後執行。這樣指令碼的執行次序就無法控制,只是指令碼不會阻止盛羽頁面的顯示。當頁面的指令碼之間彼此獨立,async是最理想的選擇。如果指令碼依賴於其它指令碼,呼叫這些指令碼時應使用defer,將關聯的指令碼按所需順序置於HTML中。
7、JS的註釋和C相同。

二、JS初體驗

使用簡易版「猜數位」遊戲進行JS初體驗。
1、使用關鍵字let建立變數。
使用關鍵字const建立常數。本例中用常數來儲存對介面元素的參照。介面元素的文字可能會改變,但參照是不變的。
2、使用等號=爲變數賦值。
例:
在这里插入图片描述
3、JS運算:
嚴格等於(測試值和數據型別):===
嚴格不等於:!==
等於(測試值):==
不等於(測試值):!=
在这里插入图片描述

4、寫了函數後要呼叫它。需要呼叫程式碼來響應事件。
在这里插入图片描述
5、focus()方法。其讓遊標在頁面載入完畢時自動放置於某個輸入框內,其提高了可用性——使用者無需點選輸入框便可直接輸入。

三、查詢並解決JS錯誤

1、利用開發工具JavaScript控制檯去查詢錯誤。
2、console.log()方法,它可以把值列印到控制檯,是一個非常實用的偵錯功能。

四、字串

1、跳脫字元:通過在字元之前放一個反斜槓\來實現這一點。
在这里插入图片描述
2、window.promt()和window.alert()
在这里插入图片描述
3、字串轉數位:Number()
數位轉字串:toString()方法
在这里插入图片描述