一 、運(yùn)算符
- 1.算數(shù)運(yùn)算符
+ 、-、* 、 / 、 %
- 2.拼接運(yùn)算符
+
注意:拼接運(yùn)算符,左右2邊,出現(xiàn)字符串,就能實(shí)現(xiàn)拼接
- 邏輯運(yùn)算符
&& 與 找假,找到了假的,就不往后面執(zhí)行,返回結(jié)果
|| 或 找真,找到了真的,就不往后面執(zhí)行,返回結(jié)果
! 非
注意: && , || 又稱之為 短路運(yùn)算符
- 關(guān)系運(yùn)算符
>、>=、<、<=、 ==、 ===、 !=、 !==
關(guān)系運(yùn)算符的比較規(guī)則:
1, 數(shù)字和數(shù)字比較, 直接比較大小
2, 數(shù)字和字符串比較, 字符串轉(zhuǎn)換為數(shù)字后再比較
3, 字符串和字符串比較, 進(jìn)行字符的ASCII碼值比較比較注意事項(xiàng):
1, 布爾值 ture=1, false=0
2, 只要不等于NaN, 就是true,其他有NaN的運(yùn)算都為false
3, 如果要恒等, 則必須值和類型都要相等;-
關(guān)系運(yùn)算符 (特殊值)
image.png
注意 undefined == 0 undefined是undefined類型,0是數(shù)值類型,不能進(jìn)行比較,所以是false
[]==![] true toString()后 ""
{}==!{} false toSting()后 NaN
0 == '' // true
0 == '0' // true
- 運(yùn)算符優(yōu)先級(jí)
image.png
- 賦值運(yùn)算符
+=、-=、*=、/=、%=
- 6.一元運(yùn)算符
一元運(yùn)算符,有稱之為 自增與自減
a++ 先取值,后運(yùn)算
++a 先運(yùn)算,后賦值
a--, --a 同上
- 三目運(yùn)算符
表達(dá)式 ? 結(jié)果1:結(jié)果2
- 8.位移運(yùn)算符
2 >> 2 == 0 // 把2 的2進(jìn)制數(shù) 向右邊移動(dòng)2位
2 << 2 == 8
注意,位移運(yùn)算符會(huì)把第一個(gè)數(shù)轉(zhuǎn)成2進(jìn)制,根據(jù) 位移符解決將2進(jìn)制向左還是向右移動(dòng) n位,n就是符號(hào)后面的那個(gè)數(shù),位移操作完成后,將新的2進(jìn)制數(shù)轉(zhuǎn)回10進(jìn)制
二 、三大流程語句
程序的三大流程控制:
我們的計(jì)算機(jī)在執(zhí)行一個(gè)程序的時(shí)候,最基本的方式是一條語句接一條語句的執(zhí)行。但不可能所有的問題都能用順序執(zhí)行方式就能解決,總會(huì)有一些跳轉(zhuǎn)。
采用結(jié)構(gòu)化的程序設(shè)計(jì),可以大大提高開發(fā)程序的速度、提高程序的可讀性、程序運(yùn)行的速度和效率。
結(jié)構(gòu)化程序是由若干個(gè)基本結(jié)構(gòu)組合而成,每一個(gè)結(jié)構(gòu)可以包含若干條語句和其它基本結(jié)構(gòu)。共有三種基本結(jié)構(gòu):
順序:從上朝下執(zhí)行的代碼就是順序
分支(選擇):根據(jù)不同的情況,執(zhí)行對(duì)應(yīng)代碼
循環(huán):重復(fù)做一件事情
1.if單分支
if條件判斷語句的寫法:
if (表達(dá)式){
執(zhí)行語句
}
當(dāng)括號(hào)內(nèi)的表達(dá)式結(jié)果成立(為true時(shí)),則執(zhí)行大括號(hào)內(nèi)的語句,否則不執(zhí)行。
注意:
if后面的()不能省略。
一條執(zhí)行語句可以省略{}, 多條時(shí)不能省略{}, 建議不管是一條還是多條都寫上{}
IF雙分支語句
if雙分支語句的寫法:
if(表達(dá)式){
執(zhí)行語句1
}else{
執(zhí)行語句2
}
當(dāng)if括號(hào)內(nèi)的表達(dá)式結(jié)果成立,進(jìn)入執(zhí)行語句1,否則進(jìn)入執(zhí)行語句2;
- IF多分支語句
if多分支語句的寫法:
if(表達(dá)式){
執(zhí)行語句1
} else if(表達(dá)式2){
執(zhí)行語句2
} else if(表達(dá)式3){
執(zhí)行語句3
}else{
執(zhí)行語句n
}
從上往下,滿足哪個(gè)條件就執(zhí)行其相對(duì)應(yīng)的語句,都不滿足時(shí),執(zhí)行最后的else的語句,只能進(jìn)入其中之一。
- IF的嵌套
將整個(gè)if語句塊插入另一個(gè)if語句塊中if (表達(dá)式1) { if (表達(dá)式2) { if (表達(dá)式3) { 語句; } else { 語句; } } else{ 語句; } }
注意: 嵌套if時(shí), 內(nèi)層的每一對(duì)if-else代碼要縮進(jìn)且對(duì)齊;編寫代碼時(shí),else要與最近的if配對(duì)。
- Switch語句的寫法:
switch(表達(dá)式) {
case 常量1: 語句; break;
case 常量2: 語句; break;
…
case 常量n: 語句; break;
default:語句; break;
}
表達(dá)式的結(jié)果等于哪個(gè)case的常量,則執(zhí)行其后的語句,執(zhí)行完break就跳出switch結(jié)構(gòu),都不滿足則執(zhí)行default的語句。
break的作用:是跳出switch結(jié)構(gòu),如果沒有break,則繼續(xù)執(zhí)行下面分支的的語句(而不進(jìn)行判斷)。
注意case穿透,要加break
switch的應(yīng)用場(chǎng)景: 表達(dá)式為固定值, 不能判斷范圍
switch的比較是屬于恒等于,也就是值與類型都要一致!

