Js02天---流程控制(運(yùn)算符、if分支、while循環(huán))

算數(shù)運(yùn)算符

1.加法 +
2.減法 -
3.乘法 * 星號(hào)
4.除法 / 反斜杠
5.取余(取模) % 百分比
開發(fā)用法:判斷某個(gè)數(shù)字是否能被整除

    // 加法
    console.log("1 + 2 :", 1 + 2); //3
    // 減法
    console.log("1 - 2 :", 1 - 2); //-1
    // 乘法
    console.log("2 * 2 :", 2 * 2); //4
    // 除法
    console.log("4 / 2 :", 4 / 2); //2
    // 取余
    console.log("4 % 2 :", 4 % 2); //0
    console.log("3 % 2 :", 3 % 2); //1

算數(shù)運(yùn)算優(yōu)先級(jí)順序:先乘除后加減,有括號(hào)先算括號(hào),優(yōu)先級(jí)相同從左到右計(jì)算。取余也包括上。

賦值運(yùn)算符

對(duì)變量賦值時(shí)進(jìn)行快速操作
+=
-=
*=
/=
%=


一元運(yùn)算符

++ 讓變量的值 +1
-- 讓變量的值 -1
作用:經(jīng)常用于計(jì)數(shù)來使用。 比如進(jìn)行10次操作,用它來計(jì)算進(jìn)行了多少次了
前置遞增 ++num,其作用相當(dāng)于 num += 1
后置遞增num++,其作用相當(dāng)于 num += 1

遞增的運(yùn)算以及理解

前置自增和后置自增單獨(dú)使用沒有區(qū)別,如果一起使用就有區(qū)別
前置自增:先自加再使用,先自加1,再返回值,理解為一個(gè)表達(dá)式。num= num + 1,如果num=1返回的值是2
后置自增:先使用再自加 ,先返回原值,再自加一,理解為num++是一個(gè)原值(整體),然后程序再輸出一次num++的話,此時(shí)的num就比上一個(gè)num多1

比較運(yùn)算符

返回值是布爾型

: 左邊是否大于右邊
<: 左邊是否小于右邊
=: 左邊是否大于或等于右邊
<=: 左邊是否小于或等于右邊
==: 左右兩邊是否相等,將兩邊的數(shù)據(jù)進(jìn)行轉(zhuǎn)換為數(shù)值
===3: 左右兩邊是否類型和值都相等
3!==: 左右兩邊是否不全等

字符串的比較,是比較對(duì)應(yīng)的ASCII碼
從左到右比較,第一位一樣再比較第二位,以此類推。

NaN不等于任何值,包括它本身

盡量不要比較小數(shù),因?yàn)樾?shù)有精度問題,前端進(jìn)行計(jì)算的時(shí)候,用計(jì)算函數(shù)庫(別人給我們寫好的一系列函數(shù))

不同類型之間比較會(huì)發(fā)生隱式轉(zhuǎn)換

!!:兩次取反的作用,把數(shù)據(jù)類型轉(zhuǎn)換為布爾型

邏輯運(yùn)算符

&&---邏輯與---并且---兩邊都為true才為true---一假則假
||---邏輯或---或者---符號(hào)兩邊有一個(gè)是真的即為真---一真則真
!---邏輯非---取反---true變false,false變true---真變假,假變真

邏輯上為假的數(shù)據(jù)有:false、null、undefined、“”、0、NaN
邏輯上為真的數(shù)據(jù)有:true,數(shù)值(0以外)Array

邏輯運(yùn)算符用來解決多重條件判斷

邏輯運(yùn)算符的短路:只存在于&&跟||中,當(dāng)滿足一定條件會(huì)讓右邊代碼不執(zhí)行

運(yùn)算符優(yōu)先級(jí):
口訣:計(jì)算比較判斷邏輯
一元運(yùn)算符里面的邏輯非優(yōu)先級(jí)最高
先算與,再算或


表達(dá)式和語句

語句:JS整句或命令,用來描述一件事情,代碼量較多,如if或者for語句。
表達(dá)式:表達(dá)式通常會(huì)在原地返回一個(gè)值; 代碼較短。
區(qū)別:表達(dá)式計(jì)算出一個(gè)值,但語句用來自行以使某件事發(fā)生(做什么事)

分支語句

程序三大執(zhí)行語句
1.從上到下按順序執(zhí)行
2.根據(jù)條件選擇執(zhí)行代碼,這種叫做分支結(jié)構(gòu)
3.某段代碼被重復(fù)執(zhí)行,就叫循環(huán)結(jié)構(gòu)

if語句

單分支:
語法: if (條件) {滿足條件時(shí)執(zhí)行的代碼}
雙分支:

    let name = prompt("請(qǐng)輸入您的姓名")
    if (name = "劉德華") {
      alert("能給我簽名嗎?")
    } else {
      alert("爬")
    }

多分支語句:

    let time = prompt("請(qǐng)輸入時(shí)間")
    if (time < 12) {
      alert("上午好")
    } else if (time < 18) {
      alert("下午好")
    } else if (time < 21) {
      alert("晚上好")
    } else {
      alert("趕緊睡覺")
    }
三元運(yùn)算符

是比if雙分支更簡單的寫法,也叫三元表達(dá)式(三元:需要三個(gè)操作數(shù),表達(dá)式:會(huì)返回一個(gè)值)
符號(hào)?跟:配合使用
語法::條件?滿足條件執(zhí)行的代碼:不滿足條件執(zhí)行的代碼
一般用來取值

      let a = prompt("請(qǐng)輸入第一個(gè)數(shù)字");
      let b = prompt("請(qǐng)輸入第二個(gè)數(shù)字");
      console.log(a > b ? a : b);

循環(huán)語句

1.斷點(diǎn)調(diào)試

掌握斷點(diǎn)調(diào)試方法,學(xué)會(huì)通過調(diào)試檢查代碼
方法:
1.瀏覽器打開調(diào)試界面
2.按F12打開開發(fā)者工具
3.點(diǎn)到sources一欄
4.選擇代碼文件
斷點(diǎn):在某句代碼上加的標(biāo)記就叫斷點(diǎn),當(dāng)程序執(zhí)行到這句有標(biāo)記的代碼時(shí)會(huì)暫停下來

2.while循環(huán)

循環(huán):重復(fù)執(zhí)行某段代碼, 而 while : 在…. 期間
1-跟if語句很像,都要滿足小括號(hào)里的條件為true才會(huì)進(jìn)入執(zhí)行代碼
2-while大括號(hào)里代碼執(zhí)行完畢后不會(huì)跳出,而是繼續(xù)回到小括號(hào)里判斷條件是否滿足,若滿足又執(zhí)行大括號(hào)里的代碼,然后再回到小括號(hào)判斷條件,直到括號(hào)內(nèi)條件不滿足,即跳出

循環(huán)需要具備三要素:
1.變量起始值
2.終止條件(沒有終止條件,循環(huán)會(huì)一直執(zhí)行,造成死循環(huán))
3.變量變化量(用自增或者自減)

語法:

      // 在頁面中打印輸出10句“月薪過萬”
      let times = 10;
      while (times--) {
        console.log("月薪過十萬", times);
      }
      // 頁面輸出1-100
      let i = 1;
      while (i <= 100) {
        console.log(i);
        i++;
      }
      // 計(jì)算從1加到100的總和并輸出
      let j = 1,
        sum = 0;
      while (j <= 100) {
        sum += j;
        j++;
      }
      console.log(sum);
      // 計(jì)算1-100之間的所有偶數(shù)和
      let k = 1,
        sum2 = 0;
      while (k <= 100) {
        if (k % 2 === 0) {
          sum2 += k;
        }
        k++;
      }
      console.log(sum2);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容