javascript基礎(chǔ)(2)

一 、運(yùn)算符

  • 1.算數(shù)運(yùn)算符
      + 、-、* 、 / 、 % 
  • 2.拼接運(yùn)算符
     + 

注意:拼接運(yùn)算符,左右2邊,出現(xiàn)字符串,就能實(shí)現(xiàn)拼接

    1. 邏輯運(yùn)算符
     &&  與  找假,找到了假的,就不往后面執(zhí)行,返回結(jié)果
     ||     或   找真,找到了真的,就不往后面執(zhí)行,返回結(jié)果
     !     非

注意: && , || 又稱之為 短路運(yùn)算符

    1. 關(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
    1. 賦值運(yùn)算符
    +=、-=、*=、/=、%=
  • 6.一元運(yùn)算符
    一元運(yùn)算符,有稱之為 自增與自減
a++      先取值,后運(yùn)算
++a      先運(yùn)算,后賦值
a--, --a 同上
    1. 三目運(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í)行。

注意:

  1. if后面的()不能省略。

  2. 一條執(zhí)行語句可以省略{}, 多條時(shí)不能省略{}, 建議不管是一條還是多條都寫上{}

  3. 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;

  1. 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)入其中之一。

  1. 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ì)。

  1. 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的比較是屬于恒等于,也就是值與類型都要一致!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容