JavaScript入門
1 什麼是JavaScript
1.1 概述
JavaScript是一門世界上最流行的腳本語言。
1.2 歷史
ECMAScript可以理解爲JavaScript的一個標準,目前最新版本已達到ES6!但大部分瀏覽器還只停留在支持ES5代碼上。
2 快速入門
2.1 引入JavaScript (Hello world)
-
內部標籤
<script> alert('hello world'); </script>
-
外部引入
demut.js文件:
alert('hello world');
index.html文件:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="js/demut.js"></script> </head> <body> </body> </html>
運行結果:
2.2 基本語法入門
瀏覽器調試必備:
我們會經常用到Console調試js程序!
案例展示:(展示定義變量與條件控制)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--JavaScript嚴格區分大小寫!-->
<script>
// 1.定義變量 變量類型 變量名 = 變量值;
var score = 10;
alert(score);
// 2.條件控制
if (score > 60 && score < 70){
alert("60~70");
}else if (score >70 && score < 90){
alert("70~90");
}else{
alert("Other");
}
//console.log(score) //在瀏覽器的控制檯打印變量! ~~ sout
</script>
</head>
<body>
</body>
</html>
運行結果:
2.3 數據類型
數值、文本、圖像、音頻、視頻…
變量
var 變量名 = ...
number
js不區分小數和整數
123 // 整數
123.1 //浮點數123.1
1.123e3 //科學計數法
-99 //負數
NaN //not a number
Infinity //表示無限大
字符串
‘abc’ “abc”
布爾值
true, false
邏輯運算
&& // 兩個都爲真,結果爲真
|| // 一個爲真,結果爲真
! // 真值取反
比較運算符
=
== // 等於(類型不一樣,值一樣,也會判斷爲true)
=== // 絕對相等(類型一樣,值一樣,結果爲true)
須知:
-
NaN===NaN,NaN與所有數值均不相等,包括自己。只能通過isNaN(NaN)來判斷其是否爲NaN。
-
浮點數問題:
console.log((1/3)===(1-2/3)); //false
儘量避免使用浮點數進行運算,存在精度問題!
Math.abs(1/3-(1-2/3)) < 0.000000001 //true
null和undefined
- null 空
- undefined 未定義
數組
Java的數組必須是一系列類型相同的對象,而JS中不需要這樣!
對象是大括號,數組是中括號
每個屬性之間使用逗號隔開,最後一個不需要添加。
案例展示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
var arr = [1,2,3,4,5,'hello',null,true];
//Person person = new Person(1,2,3,4,5);
var person = {
name:"demut",
age:3,
tags:['js','java','web','...']
}
</script>
</head>
<body>
</body>
</html>
取對象的值,(控制檯中)
person.name
> "demut"
person.age
> 3
2.4 嚴格檢查格式
一個html文件會引用多個js文件,若其中有全局變量,則互相之間會產生影響,引發很多麻煩,所以要使用嚴格檢查格式,避免上述情況的發生。
代碼展示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--
前提: IDEA 需要設置支持ES6語法
'use strict'; 嚴格檢查模式,預防JavaScript的隨意性導致產生的一些問題。
必須寫在第一行!
局部變量建議都使用let定義
-->
<script>
'use strict';
// i = 1; //報錯
let i = 1;
//ES6 let
</script>
</head>
<body>
</body>
</html>
寫在最後
今天肚子疼!
To Demut and Dottie!