7. JavaScript 判斷式 - ZoeHYH/mentor-program-4th GitHub Wiki

條件式 Condition

條件寫好可以結合函式 Function 重複調用。

if ( 判斷式 ) ...

if(若判斷式為 true) { // 撰寫時不要為了簡短而忽略可讀性
	執行 Statement
}
	const score = 70
	if(score = 60) { Statement } // 賦值完依然會執行 Statement
	if(70 >= score >= 50) { Statement} // false ,後面變成判斷 true >= 50
	if(70 >= score && score >= 50) { Statement } // true

if ... else ...

if(判斷式) {
	Statement
} else { // 判斷式為 false
	Statement// 可再加入 if else 判斷式,或參考 if else if 的寫法
}

if ... else if ...

if(判斷式) {
	Statement
} else if(判斷式){ //可以有多個
	Statement
} else { 
	Statement
}

三元條件運算子 Conditional Operator

判斷式 ? if true 時的 Statement: else 時的 Statement
判斷式 ? if true 時的 Statement
: 判斷式 ? else if true 時的 Statement
: else 時的 Statement

條件判斷 Switch

switch(變數) { //變數裡存放對應某一選項的值
	case 選項值:
		Statement
		break //跳出區塊
	case 選項值:
		Statement
		break
	case 選項值:
		Statement
		break
	default:
		Statement
}

陣列

固定排序轉換的狀況,很多時候用陣列就可以了。

const month = 6
const month_to_chinese = ['一月', '二月', '三月', '四月', '五月', '六月']
console.log(month_to_chinese[month - 1])

迴圈 Loop

一般要設終止條件,否則會變成無窮迴圈,造成崩潰。

早期是在迴圈的區塊設定 label ,再使用 goto label 的語法造成迴圈的效果,這種寫法在 JavaScript 已被取代。

do ... while ...

do {
	Statement
} while(判斷式)

結合其他指令

do {
	Statement
	if(判斷式 2) {
		continue 
	}
	if(判斷式 3) {
		break
	}
	Statement //符合判斷式 2 或 3 就不會被執行
} while(判斷式 1)

while ...

while(判斷式) {
	Statement
}

for (初始化; 判斷式; 運算式)

常用的迭代方法。

for (let i=0; i > 或 < 數值 ; i 遞增或遞減){
	Statement
}
const arr = [] 
for (let i=0; i<10; i++){
	arr[i] = []
	for (let j=0; j<10; j++){ //迴圈裡可以再迴圈
		arr[i].push(j) //二維陣列
	}
}

指令

break //跳出 switch 或 loop
continue //迴圈:跳到下一圈
debugger //設定中斷點,加在開頭,可在開發人員工具的 Source 逐行執行程式碼