if結構
單分支:一個條件滿足就執行 不滿足就不執行
if(條件){
代碼塊..
}
過程:如果條件滿足 就執行代碼塊 不滿足就不執行
條件:
表達式 比較運算表達式
一個值條件判斷中:會發生隱式轉換 轉換成布爾值
一下轉換成false 0 0.0 "" null undefined NaN
&& ||條件判斷中 如果同時出現 &&優先級高(類比+-*/)
特殊用法:
if {}可以省略 省略后只能控制一行 (不推薦使用)
短路
表達式1&&表達式2
表達式1相當於條件判斷,表達式1結果為true表達式2執行,否則不執行
適用於:只有一個條件,只有一個語句
案例:要求輸入成績,成績的各種划分
判斷: 100 獎勵蘭博基尼
90-100 法拉利
80-90 寶馬
70-80 奧迪
60-70 奧拓
<60 大嘴巴子
//老師輸入成績
var score = parseInt(prompt("請輸入成績"));
if(score == 100) {
alert("獎勵一台蘭博基尼");
}
if(score >= 90 && score < 100) {
alert("獎勵一台法拉利");
}
if(score >= 80 && score < 90) {
alert("獎勵一台寶馬");
}
if(score >= 70 && score < 80) {
alert("獎勵一台奧迪");
}
if(score >= 60 && score < 70) {
alert("獎勵一台奧拓");
}
if(score < 60 ){
alert("獎勵倆大嘴巴子");
}
if..else..結構 雙分支
if(條件){
代碼塊1;
}else{
代碼塊2
}
過程:如果條件滿足,則執行代碼塊1,否則執行代碼塊2
一個條件做兩件事情
if..else if...else結構 (else if結構) 多分支
if(條件1){
代碼塊1;
}else if(條件2){
代碼塊2
}else if(條件3){
代碼塊3
}...
else{
}
適用於:多個條件做多件事情
switch...case..結構 多分支
語法:
switch(表達式){ 可以是一個式子 或者 一個變量
case 值1 :
要執行語句;
break;
case 值2:s
語句2;
break;
....
default:默認要執行的語句
}
比較:全等比較 表達式 必須和 case 后面的值 是全等關系
使用場景:確定值得時候(不是一個范圍)
js錯誤處理
從上往下執行,遇到錯誤停止,下面的代碼不再運行
Uncaught ReferenceError: b is not defined 變量未聲明
Uncaught SyntaxError: Invalid or unexpected token 違法字符
Uncaught SyntaxError: Unexpected end of input
字符串轉義字符
\
\\ \
\" "
\n 換行
\t tab(四個空格)
\' ‘
\.
循環結構
循環:重復執行相同或者相似的代碼
生活中:跑圈、上學、活着
控制台打印 100 hello world
控制台打印 1000 hello world
將1000 hello world 改成 你好世界
while結構
while 當。。。時候
語法:
while(循環條件){
循環體;
}
過程:判斷循環條件是否為真,如果為真則執行循環體,再一次去判斷循環條件,為真繼續執行,直到條件為false的時候,跳出循環(循環結束)
while(true){
console.log(1);
}
如果條件為true則不更新,循環會一直下去 死循環
循環條件會隱式轉換:0 0.0 "" undefined null NaN false
三要素:
1,循環變量 (用於條件判斷)
在哪里循環 循環之前 外部
2,循環條件 (判斷循環變量)
寫在 ()
3,循環變量更新
循環體內部
do{}while()循環
do{
循環體;
}while(條件)
三要素:
1,循環變量 (用於條件判斷)
在哪里循環 循環之前 外部
2,循環條件 (判斷循環變量)
寫在 ()
3,循環變量更新
循環體內部
過程:
先執行循環體,循環條件判斷,如果為真,繼續執行循環體,再一次判斷,為真繼續執行,直到false跳出循環
跟while區別:
當第一次條件不滿足時,dowhile至少執行一次,while一次都不執行
循環內部break關鍵字
break 控制循環跳出
寫在 循環體內部
while循環使用場景:不確定循環次數時
while(true){
if(){
break;
}
}
電話銀行: (下面的練習可以先練練,都是基礎! 可以留言 我發代碼)
彈出 提示
1 查詢
2 轉賬
3 取款
0 退出
游戲:
猜數字
循環外 隨機 生成 [0,100)的隨機整數
Math.random() 生成[0,1) 隨機數
Math.random()*100 [0,100)
parseInt(Math.random()*100) [0,100)的隨機整數
循環內 猜
大了 提醒大了
小了 提醒小了
對了 提醒對了 跳出循環