加密授權驗證學習之一 ——獲取計算機CPUID序列號
1. 函式的概念
函式:就是封裝了一段可被重複呼叫執行的程式碼塊。通過此程式碼塊可以實現大量程式碼的重複使用。
2. 函式的使用
宣告函式
// 宣告函式
function 函式名() {
//函式體程式碼
}
-
function 是宣告函式的關鍵字,必須小寫
-
由於函式一般是為了實現某個功能才定義的, 所以通常我們將函式名命名為動詞,比如 getSum
呼叫函式
// 呼叫函式
函式名(); // 通過呼叫函式名來執行函式體程式碼
-
呼叫的時候千萬不要忘記新增小括號
-
口訣:函式不呼叫,自己不執行
注意:宣告函式本身並不會執行程式碼,只有呼叫函式時才會執行函式體程式碼。
函式的封裝
-
函式的封裝是把一個或者多個功能通過函式的方式封裝起來,對外只提供一個簡單的函式介面
-
簡單理解:封裝類似於將電腦配件整合組裝到機箱中 ( 類似快遞打包)
例子:封裝計算1-100累加和
/*
計算1-100之間值的函式
*/
// 宣告函式
function getSum(){
var sumNum = 0;// 準備一個變數,儲存數字和
for (var i = 1; i <= 100; i++) {
sumNum += i;// 把每個數值 都累加 到變數中
alert(sumNum);
}
// 呼叫函式
getSum();
2.3 函式的引數
函式引數語法
-
形參:函式定義時設定接收呼叫時傳入
-
實參:函式呼叫時傳入小括號內的真實資料
引數的作用 : 在函式內部某些值不能固定,我們可以通過引數在呼叫函式時傳遞不同的值進去。
函式引數的運用:
// 帶引數的函式宣告
function 函式名(形參1, 形參2 , 形參3-
呼叫的時候實參值是傳遞給形參的
-
形參簡單理解為:不用宣告的變數
-
實參和形參的多個引數之間用逗號(,)分隔
-
函式形參和實引數量不匹配時
注意:在JavaScript中,形參的預設值是undefined。
小結:
-
函式可以帶引數也可以不帶引數
-
宣告函式的時候,函式名括號裡面的是形參,形參的預設值為 undefined
-
呼叫函式的時候,函式名括號裡面的是實參
-
多個引數中間用逗號分隔
-
形參的個數可以和實參個數不匹配,但是結果不可預計,我們儘量要匹配
2.4 函式的返回值
return 語句
返回值:函式呼叫整體代表的資料;函式執行完成後可以通過return語句將指定資料返回 。
// 宣告函式
function 函式名(){
-
在使用 return 語句時,函式會停止執行,並返回指定的值
-
如果函式沒有 return ,返回的值是 undefined
break ,continue ,return 的區別
-
break :結束當前的迴圈體(如 for、while)
-
continue :跳出本次迴圈,繼續執行下次迴圈(如 for、while)
-
return :不僅可以退出迴圈,還能夠返回 return 語句中的值,同時還可以結束當前的函式體內的程式碼
2.5 arguments的使用
當不確定有多少個引數傳遞的時候,可以用 arguments 來獲取。JavaScript 中,arguments實際上它是當前函式的一個內建物件。所有函式都內建了一個 arguments 物件,arguments 物件中儲存了傳遞的所有實參。arguments展示形式是一個偽陣列,因此可以進行遍歷。偽陣列具有以下特點:
-
具有 length 屬性
-
按索引方式儲存資料
-
不具有陣列的 push , pop 等方法
注意:在函式內部使用該物件,用此物件獲取函式呼叫時傳的實參。
2.6 函式案例
函式內部可以呼叫另一個函式,在同一作用域程式碼中,函式名即代表封裝的操作,使用函式名加括號即可以將封裝的操作執行。
2.7 函式的兩種宣告方式
-
自定義函式方式(命名函式)
利用函式關鍵字 function 自定義函式方式
// 宣告定義方式
function fn() {-
因為有名字,所以也被稱為命名函式
-
呼叫函式的程式碼既可以放到宣告函式的前面,也可以放在宣告函式的後面
-
-
函式表示式方式(匿名函式)
利用函式表示式方式的寫法如下:
// 這是函式表示式寫法,匿名函式後面跟分號結束
var fn = function(){-
因為函式沒有名字,所以也被稱為匿名函式
-
這個fn 裡面儲存的是一個函式
-
函式表示式方式原理跟宣告變數方式是一致的
-
函式呼叫的程式碼必須寫到函式體後面
-