上節課主要講解的是JavaScript代碼的規范和格式。
這節課來具體講解關于變量、數據類型和運算符的基礎知識,然后利用這些知識在網頁上顯示一個九九乘法口訣表。
變量
變量是用來存儲一個數據的容器。
JavaScript變量的定義規范是這樣的:
var x=1;
var y;
var name="Michael";
在變量名前面用關鍵字var來進行定義。
定義變量名的同時可以對變量用賦值=進行設置初始值。
變量必須以字母開頭;
變量能以$和_符號開頭;
變量名稱對大小寫敏感(例如 x 和 X 是不同的變量)。
一個好的編程習慣,是在程序開始之處對需要用到的變量統一定義。
來做一個加法計算器,定義2個變量,然后將2個變量相加,結果賦值給一個新的變量,然后輸出到控制臺。
修改testjs.js文件如下:
var a=3;
var b=5;
var c=a+b;
console.log(a,"+",b,"=",c);
將新增的函數addValue替換到click按鈕的onclick事件上。
修改testjs.html文件如下:
刷新網頁,點擊click按鈕,然后打開網頁調試工具,在console窗口可以看到輸出結果。
這里的console.log的作用就是可以向瀏覽器調試工具輸出log信息,這個方法對于調試JavaScript非常有用。
輸出的結果不會顯示到網頁內容中,只會出現在瀏覽器的調試工具的console窗口中。
數據類型:數字、字符串、布爾和數組
變量可以存儲不同的數據類型的值。
常見的數據類型有數字、字符串、布爾和數組。
JavaScript只有一種數字類型,可以帶小數點也可以不帶。
例如:
var a=35.00;
var a=35;
字符串是用來存儲字符的變量類型。
例如:
var name="michael";
var name='jack';
可以使用單引號或者雙引號,注意的是前后如果用單引號,則當中的內容里面不要有單引號。
布爾類型只有2個值:true和false。
例如:
var isnum=true;
var notme=false;
布爾類型用于條件判斷語句中。
數組可以存儲一組變量,并可以通過下標序號訪問數組的元素。
例如:
var names=new Array();
names[0]="michael";
names[1]="jack";
names[2]="tom";
或者 var names=new Array("michael","jack","tom");
或者var names=["michael","jack","tom"];
數組的第一個元素的下標序號是從0開始的。
運算符
前面用到的+就是一個運算符,是一個算術運算符。
常用的運算符有3大類:算術運算符,賦值運算符,邏輯運算符,比較運算符。
常用的算術運算符有:
- 加法運算符
- 減法運算符
- 乘法運算符
/ 除法運算符
% 求余數運算符
算術運算法可以將2個變量進行算術計算得到一個新的值。
例如:
var x=9;
var y=6;
var z=x-y;
z的值就等于3。
例如:
var name1="michael";
var name2=" hello";
var name=name1+name2;
name的值就是"michael hello"。
數字和數字相加等于數字,字符串和字符串相加等于字符串。如果是數字和字符串相加則等于字符串。
常用的賦值運算符:
= 賦值運算符
符值運算符可以將數據賦予給一個變量。
邏輯運算法:
NOT 邏輯非運算符,使用!來運算
AND 邏輯與運算符,使用&&來運算
OR 邏輯或運算符,使用||來運算
邏輯運算符只能對布爾變量進行運算。
邏輯非運算符可以將布爾變量進行反向符值。
例如,var a=true; var b=!a; 則b的值是false。
邏輯與運算符,按照如下規則計算:
true && true 的結果是true
true && false 的結果是false
false && true 的結果是false
false && false 的結果是false
規則是只有2個都為真結果才為真。
邏輯或運算符,按照如下規則計算:
true || true 的結果是true
true || false 的結果是true
false || true 的結果是true
false || false 的結果是false
規則是只要1個為真則結果為真。
比較運算符用于比較,返回的結果是一個布爾數據類型的值。
常見的有以下:
== 等于
大于
< 小于
= 大于等于
<= 小于等于
例如:
3==3 的值為 true
3==5 的值為 false
3>5 的值為false
5<9 的值為true
3>=3 的值為true
一般關系運算符用于條件判斷語句中。
for循環
為了實現九九乘法口訣表,肯定要用到循環,否則一個一個去寫的話要累死。
JavaScript里面的循環,同樣有while循環和for循環,這里先來使用for循環。
for循環的語法是這樣的:
for (語句1;語句2;語句3) {
循環執行代碼
}
語句1會在循環開始前執行一次,一般用于設置初始條件。
語句2定義運行循環的條件,一般是一個比較運算的結果。
語句3在每次循環執行代碼完成之后運行一次,一般用于改變循環條件的變量。
例如:
for (var i=0;i<3;i++) {
console.log(i);
}
它的運行次序是這樣的:
首先定義變量i的值為0,然后進入循環體內部執行,在console輸出0,然后運行i++,這樣i的值變為1,然后判斷是否i<6,發現1<3=true,滿足條件,則再次進入循環體內部執行,在console輸出1,然后運行i++,這樣i的值變為2,然后判斷是佛i<6,發現2<3=true,滿足條件,則再次進入循環體內部執行,在console輸出2,然后運行i++,這樣i的值變為3,然后判斷是佛i<6,發現3<3=true,不滿足條件結束循環。
這樣console就輸出3次,輸出結果從0到2。
console里輸出乘法口訣表
假如要實現一個九九乘法口訣表,就需要第1排輸出11=1,第2排輸出12=2和2*2=4,這樣統計下來,需要輸出9行9列。
因此,可以先用2層for循環來實現在console里面輸出乘法口訣表。
修改testjs.js代碼如下:
刷新頁面,點擊click按鈕。
可以看到console里面輸出了乘法口訣表。
網頁中顯示九九乘法口訣表
要讓乘法口訣表顯示在網頁中,需要利用到document.write語句了。
document.write語句可以用于在網頁中輸出新的網頁元素內容。
先來增加一個div的樣式吧,在head部分增加CSS樣式:
修改testjs.html代碼如下:
這個樣式定義了div為一個圓角的長方形,底色為淺灰色,邊框為單實現深灰色,文字字體為紫色,字體為20px和其它樣式。
然后來在document里面用JavaScript代碼輸出一個div元素。
修改testjs.html代碼如下:
刷新網頁:
可以看到,網頁中在document.write執行的地方出現了一個div元素了,它的樣式是前面定義好的樣式。
document.write方法可以向網頁文檔中輸出指定的網頁元素內容。
如果要顯示多行的div,那么可以利用
來進行換行。
修改testjs.html代碼如下:
可以看到第2行出現了,第2行顯示了2個元素。
修改代碼,利用2層for循環,輸出九九乘法口訣表。
修改testjs.html代碼如下:
刷新網頁:
可以看到網頁顯示出了乘法口訣表。
學習方法不同了
可以感覺到,學哥現在對知識的講法有所不同,由于有了前面2章的基礎,尤其是學會了python語言的基礎語法之后,再來學JavaScript,很多概念都是類似的,例如變量,數據類型,邏輯判斷等等,所以學哥就會先把概念羅列出來,然后用更多的例子來進行練習,可以利用之前的基礎,加快學習的速度。