一、概覽
1.JavaScript是前端開發(fā)的一門腳本語言(解釋性語言)
2.解釋型語言的代表:(1)Python;(2)JavaScript;(3)PHP;(4)Ruby;
3.編譯型語言:程序執(zhí)行之前需要一個專門的編譯過程,把程序編譯成為機器怨言的文件,比如:exe\jar文件;例如:C/C++,Pascal,Swift,Object-c
比如:*.c/*.cpp編譯成為*.obj文件,然后“鏈接“機器語言
4.總結(jié):(1)編譯型語言由于程序執(zhí)行速度快,在同等條件下對系統(tǒng)的要求較低,因此像開發(fā)操作系統(tǒng)、大型應用程序、數(shù)據(jù)庫系統(tǒng)等都會采用它
(2)解釋型語言的跨平臺行好,一些網(wǎng)頁腳本、服務器腳本及其輔助開發(fā)接口這樣的對速度要求不高,對不同系統(tǒng)平臺的兼容性有一定的要求的程序都是使用解釋性語言。例如:網(wǎng)頁上一個控件
(3)JavaScript是一門高級解釋型語言
5.前世今生
(1)起源于Netscapt公司的livescript語言、后來改名了,就是為了增加能夠與用戶的交互功能。
6.Javascript的應用場景
多元化場景:網(wǎng)頁特效、移動端開發(fā)(RN\Weex)、服務端開發(fā)(Node.js)、命令行工具(Node.js)、物聯(lián)網(wǎng)與人工智能(Ruff)、游戲開發(fā)(cocos2d-js)
7.JavaScript的組成
(1)ECMAScript:是ECMA制定的腳本語言的標準,規(guī)定了一種腳本語言的標準,規(guī)定了一種語言實現(xiàn)應該包含的基本內(nèi)容;JavaScript是腳本語言,所以必須遵守ECMAScript標準,包好ECMAScript標準規(guī)定的基本內(nèi)容
(2)BOM:瀏覽器對象模型,比如:彈出框、控制瀏覽器跳轉(zhuǎn)、獲取分辨率等;
(3)DOM:文檔對象模型,可以把HTML看作是文檔樹,通過DOM提供的API可以對樹上的節(jié)點進行操作。
8.JS\HTML\CSS之間的關系
(1)HTML:提供了網(wǎng)頁的結(jié)構(gòu)、以及網(wǎng)頁中的內(nèi)容;
(2)CSS:美化網(wǎng)頁、2D/3D過濾、動畫等;
(3)JS:控制網(wǎng)頁內(nèi)容,給網(wǎng)頁增加動態(tài)效果。
9.JavaScript有三種書寫格式
(1)行內(nèi)JS;(2)頁內(nèi)JS;
注意點:
i.<script></script>標簽中的js代碼一般是寫在文檔的尾部的;
ii.網(wǎng)頁時從上至下加載而js代碼通常是給標簽添加交互(操作元素),所以需要先加載HTML,否則如果執(zhí)行js代碼時HTML還未被加載,那么js代碼將無法添加交互(操作元素);
iii.如果腳本比較大,頁面的下載和渲染
(3)外鏈式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>D1_ThreeWritingFormat</title> </head> <body> <button onclick="alert('點我了');">點我</button><!--行內(nèi)JavaScript的形式--> <a href="javascript:alert('點我了');">點我</a> ? <script> alert("哈哈哈!");<!--頁內(nèi)JS,寫在body里面可以,head里面也可以,最好是寫在尾部--> </script> <script> window.onload = function () { alert("ahahhhah"); } </script> <!--引入外部的js--> <script src="D1_index.js"></script> </body> </html>
window.onload = function () { alert("外鏈式"); }
?說明:window.onload的外部引用?優(yōu)先級高,且只會調(diào)用一次。?
三、源碼:
D1_ThreeWritingFormat.html
D1_index.js
地址:
https://github.com/ruigege66/JavaScript/blob/master/D1_ThreeWritingFormat.html
https://github.com/ruigege66/JavaScript/blob/master/D1_index.js
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客園:https://www.cnblogs.com/ruigege0000/
4.歡迎關注微信公眾號:傅里葉變換,個人賬號,僅用于技術交流,后臺回復“禮包”獲取Java大數(shù)據(jù)學習視頻禮包