函數:(方法)封裝執行一項 專門任務的步驟 的代碼序列。
語法:
聲明:
function 方法名(參數列表){
方法體:步驟清單
return 返回值;
}
調用:方法名(參數值列表);
參數:方法內獨有的變量。接收傳入數據,在方法內處理。
參數讓方法變靈活!參數何時被創建?只有方法被調用時才自動創建。
參數僅限方法內部使用!方法外無法訪問方法的參數變量。
參數的作用:1. 接收外部傳入數據,在方法內處理
2. 規定調用方法的人必須提供哪些參數!
返回值:方法執行完成後,返回的一個數據。
return:本意退出方法!退出同時,可返回數據!
帶返回值的方法,使用時,等效於直接使用返回值數據。
何時使用返回值:
根據方法調用者的需要!
如果方法調用者需要明確返回一個結果,就定義返回值!
否則,可以不定義返回值!
有返回值的方法,可以當做1個值用!
何時必須用變量接住?方法的返回值,後續程序可能反覆使用!
作用域:一個變量的可用範圍!
全局作用域:直接聲明在全局作用域中的變量,叫全局變量
window對象:是整個網頁的全局作用域對象
局部(函數)作用域:聲明在方法內部的變量或方法的參數變量,都叫局部變量。
值傳遞:將一個變量的值賦值給另一個變量,其實將原變量中的值,複製一份給新變量。js中一切賦值都是值傳遞!
對未聲明的變量賦值:js會自動在全局創建該變量!
函數作用域和變量作用域完全一樣:函數作用域在調用方法時創建,方法執行完立刻銷燬!全局函數:ECMAScript定義了標準,由各瀏覽器廠商已經實現的函數。直接調用!
isNaN(x)
parseInt/Float(x)
encodeURI:將url中的非法字符轉爲單字節符號——編碼
decodeURI:將encodeURI轉後的字符串,轉換回原文——解碼
unicode編碼:每個字符2字節
utf-8編碼:字母、數字單字節 漢字3字節
encodeURIComponent:既能對多字節非法字符編碼,又能對單字節非法字符編碼
何時使用?將數據通過url發送時,都要先編碼再發送
eval():專門執行字符串格式代碼
程序結構:3種--順序;分支;循環分支結構:程序運行過程中,可以根據不同的條件,執行不同的任務。
分支結構1:
if...結構: 1件事,要麼做,要麼不做
if...else...結構: 2件事,二選一執行
elseif結構:多件事,多選一執行。如果前一個條件已經滿足,則後續else if不再執行!
分支結構中的條件,可以不是邏輯表達式!如果不是,js會自動轉換爲Boolean類型:0,null,undefined,NaN,“”,0.0都轉爲false,其餘,都轉爲true!分支結構2:switch...case...多條分支,根據條件判斷,選擇執行
語法:switch(表達式){
case 表達式1://如果表達式的值===表達式1的值
代碼段1;
…
case 表達式n:
代碼段n;
default: //如果表達式的值和所有case都不相等
默認代碼段;
}
運行機制:如果找到與表達式值匹配的case,不但執行當前case下的代碼,而且之後所有代碼都被觸發!
break:退出當前結構.
循環結構:程序反覆執行同一套代碼段。遇到結束條件,會結束執行。
循環三要素:
1. 循環條件:循環繼續執行的條件。
一旦循環條件不滿足,循環立刻退出!
2. 循環變量:用於循環條件中做判斷的變量
循環變量都會向循環退出的趨勢變化(不滿足循環條件的趨勢)——循環計數器
3. 循環體:每次循環要做的事情
while循環:當滿足條件時,就繼續循環做...事
語法:
var 循環變量;
while(循環條件){
循環體;
迭代變化循環變量;
}
break: 退出當前結構
while中何時用break:循環條件不滿足之前,希望強行退出循環。
do-while循環:先執行一次循環體,再判斷是否繼續!
如果第一次循環條件不滿足,循環體至少可以執行1次!
語法:
var 循環變量;
do{
循環體;
迭代變換循環變量;
}while(循環條件);
*變量聲明提前*: “相同作用域內”,var...無論出現在什麼位置,解析時,優先提取到js開始位置“聲明”!
while vs do while:
如果第一次條件就可能不成,也想執行一次,必須用do while
如果第一次條件一定滿足,do while等效於while。
for循環:完全等效於while循環。
適用:循環變量變化規律固定,循環次數已知/固定
語法:
for(聲明並初始化循環變量;循環條件;迭代循環變量){
循環體;
}
continue:跳過本輪循環,繼續執行下一輪循環。
遇到複雜問題:先用簡單辦法做最簡單的事情。從簡單辦法中找規律!
JavaScript知識點總結-2
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.