0、前言:
- JS全稱是JavaScript,是一種腳本語言,誕生于1995年,JS是由ECMAScript(包含js語法)、BOM(Brower Oject Model,和瀏覽器相關操作)、DOM(Document Object Model,和頁面內容相關操作)組成的。JS的版本有ES5、ES6、ES7、ES8
- JS可以寫在HTML文件當中的,JS也可以寫在后綴名為js的文件當中,然后導入到html文件中,還可以寫在標簽中,作為標簽屬性。和CSS一樣,JS也有三種寫入html的寫法。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style></style><script type="text/javascript">console.log('控制臺打印內容!')</script><script src="./demo.js"></script>
</head>
<body><script>console.log('body中執行')</script><button onclick="alert('錯誤')">點擊會彈出內容</button>
</body>
</html>
- JS當中每行代碼結束最好都加上分號,JS是弱數據類型語言,容錯率比較高。
- 注意html代碼寫好之后調試會出現網頁,如果期間代碼有修改,可以通過刷新網頁更新頁面。
1、JS基本語法:
- 變量:定義變量要使用var(variable)關鍵字,可以先定義在賦值,也可以定義加賦值。可以通過逗號隔開,一次定義多個變量。變量類型無需聲明,賦值是什么變量類型就是什么。
- 命名規范:
- 數字、字母、下劃線以及美元符($)組成
- 首字符不能為數字
- 不能使用關鍵字或者保留字
- 區分大小寫
- 小駝峰命名:myStudentScore,大駝峰命名:MyStudentScore
- 數據類型:Number(int, float), Boolean(布爾類型), String(字符串), Array(數組,類似python中的列表), Object(對象), Set(集合), Null(空,是對象類型的一種值), Undefined(變量未定義的默認值,是有Null派生而來,兩者相等但不全等,但undefined類型就是其本身)
- NaN:not a number,是一種非法運算的結果。
- 布爾類型轉換規則:非空字符串為true,空字符串為false。非0數值為true,0或者NaN為false,null為false,undefined為false。
- 在JS中整數是4個字節保存,浮點數是8個字節保存,一般為了節省內存,就會把12.0這種數值強轉為整數。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><script>var a = 10;console.log(a);var a=1,b=2,c=3;console.log(a,b,c); var m=10;console.log(typeof m); var n=3.2;console.log(typeof n); var l=3.14e3; console.log(l); console.log(1/0); console.log(1/0*0); console.log(isNaN(NaN)); console.log(parseInt(10.8)); console.log(parseInt('10')); console.log(Math.round(3.243)); console.log(3.145.toFixed(2)); console.log(Math.max(3,1,2,-1)); console.log(null == undefined) console.log(null === undefined) </script>
</body>
</html>
2、算數運算符和關系運算符:
- 算數運算符:+,-,*,/,%(取余數)
- 字符串和變量的拼接:+
- 關系運算符:>,<,<=,>=,兩個等于號 (值相等就成立),三個等于號(值和類型都相等才成立), !=,!==
- 邏輯運算符:&&、//、! (特別注意邏輯運算中的短路運算,且運算遇到false則短路,或運算遇到true則短路)
- 賦值和復合運算符:=、+=、-=、*=、/=、%=
- 一元運算符:++a,a++,–a,a–
- 三目運算符:條件?滿足條件執行語句 :不滿足條件執行語句
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><script>console.log(10+4); console.log(10%4); console.log(10/4); console.log(10**2); console.log('hello'+'haha'); console.log('hello'+10+20); console.log(10+20+'hello'); console.log(10 == '10'); console.log(10 === '10'); console.log(NaN == NaN); console.log('abc'>4); console.log('abc'<4); console.log(0 && true); console.log(false && 0); console.log(true || 0); console.log(0 || 1); var n = 10;var m = n++;console.log(m,n); var n = 10;var m = ++n;console.log(m,n); var a = 10;console.log(a++); console.log(++a); var a = 10;console.log(a--); console.log(--a); var a=20,b=30;console.log(a>b?a:b); </script>
</body>
</html>