數(shù)據(jù)傳值方式、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)

運算符的優(yōu)先級

  • 要心如明鏡:運算符有優(yōu)先級(先后順序)問題。
  • 括號最優(yōu)先,等號(賦值)最落后。
  • 先乘除后加減
  • 想不清楚或用不明白的,使用括號來解決
  • 括號只有小括號,可以一層層嵌套。

數(shù)據(jù)的傳值方式

在js中,基本數(shù)據(jù)類型使用 “拷貝傳值”——傳值的時候直接就出現(xiàn)了一份新的數(shù)據(jù)(當(dāng)然同時也是另一個變量所代表)
復(fù)合數(shù)據(jù)類型(數(shù)組和對象)使用“引用傳值”——傳值的時候只是做了一個地址指向,數(shù)據(jù)仍然只有一份,兩個變量就指向這同一份數(shù)據(jù)。

  • 注意: 基本(簡單)數(shù)據(jù)類型的變量名和數(shù)據(jù)是直接存在“快速內(nèi)存”(棧內(nèi)存)中,而復(fù)合數(shù)據(jù)類型(對象和數(shù)組)的存儲分兩個部分:實際數(shù)據(jù)存在“慢速內(nèi)存”(堆內(nèi)存)中,棧內(nèi)存中只存變量名和數(shù)據(jù)在堆內(nèi)存中的位置(地址)。

if分支結(jié)構(gòu)

控制結(jié)構(gòu):就是使用一定的語法來控制我們程序執(zhí)行的流程——也可以叫“流程控制結(jié)構(gòu)”
分支就是“多條路徑,走一條”。
  • 最簡形式:
    //如果此條件滿足(即條件判斷的結(jié)果是true),則會執(zhí)行其中的語句塊,否則什么也不做。
    if( 條件判斷語句 )
    {
    //要執(zhí)行的語句塊——語句塊其實就是一種表示“n條語句”泛泛說法。
    }

  • 二選一分支形式:含義是兩條路,必走一條。
    if( 條件判斷語句 )
    {
    //要執(zhí)行的語句塊1——前面條件成立時執(zhí)行
    }
    else
    {
    //要執(zhí)行的語句塊2——前面條件不成立時執(zhí)行
    }

  • 多選一分支結(jié)構(gòu):多條路根據(jù)條件的滿足情況走其中一條,但也可能一條都不走:
    if( 條件判斷1 ) //如果此條件滿足,則執(zhí)行語句塊1,然后if就結(jié)束了
    {
    //語句塊1
    }
    else if ( 條件判斷2 ) //如果條件1不滿足,則判斷條件2:如果滿足,則執(zhí)行語句塊2,并結(jié)束if
    {
    //語句塊2
    }
    else if ( 條件判斷3 ) //如果條件2不滿足,則判斷條件3:如果滿足,則執(zhí)行語句塊3,并結(jié)束if
    {
    //語句塊3
    }
    …………………… //依此類推。。。。。。如果沒有一個條件滿足,則其實到最后什么也不會執(zhí)行,if結(jié)束。

  • 綜合型式:
    if( 條件判斷1 ) //如果此條件滿足,則執(zhí)行語句塊1,然后if就結(jié)束了
    {
    //語句塊1
    }
    else if ( 條件判斷2 ) //如果條件1不滿足,則判斷條件2:如果滿足,則執(zhí)行語句塊2,并結(jié)束if
    {
    //語句塊2
    }
    else if ( 條件判斷3 ) //如果條件2不滿足,則判斷條件3:如果滿足,則執(zhí)行語句塊3,并結(jié)束if
    {
    //語句塊3
    }
    ……………. //依此類推。。。。。。
    else
    {
    //最后的else語句塊。 //此語句塊會在前面條件都不滿足的時候去執(zhí)行。
    }
    注意:綜合型式中是必有一條分支(語句塊)會得到執(zhí)行。

switch分支結(jié)構(gòu):

switch的分支結(jié)構(gòu)整體含義跟if類似,也是表示“多條路走一條”,其使用形式:
switch ( 一個變量或表達式 ) //不管是變量還是表達式,最終都代表一個“值”,我們用v1來說話
{
case 固定值1: //如果v1等于本值1,則會執(zhí)行語句塊1
//語句塊1;
break; //退出此switch結(jié)構(gòu)
case 固定值2: 如果v1不等于前面值1,則繼續(xù)判斷是否等于這里的值2,如果相等,執(zhí)行語句2
//語句塊2;
break; //退出此switch結(jié)構(gòu)
case ………………………………
。。。。。。。。。。。。。。。。。
default: //如果前面各個判斷都不成立(也就是不相等),則會執(zhí)行此語句塊。
//注意:switch中此default語句塊可以沒有。
//默認語句塊
}

  • 特別注意:if語句其實是可以使用非常靈活的條件判斷,比如 > >= < <= == != === ,但,switch這里case的判斷,只能有一種判斷:相等判斷。

while循環(huán)結(jié)構(gòu):

循環(huán)的基本觀念:

  1. 循環(huán)就是讓某些程序(語句塊)反復(fù)執(zhí)行
  2. 循環(huán)必須能夠有辦法停止——計算機沒有自己的判斷能力去決定“累了,不做了”
    while循環(huán)的基本語法形式:
    while ( 條件判斷 ) //如果條件判斷滿足了,則會執(zhí)行其中的語句塊,否則while結(jié)束。
    {
    //要執(zhí)行的語句塊
    } //如果此語句塊執(zhí)行完了,會立即回到前面while的位置繼續(xù)判斷。

上述形式只是語法上的基本要求,但,在“實用”中,通常會需要遵照如下模式:
【循環(huán)變量初始化】
while ( 【循環(huán)變量作為條件判斷】 )
{
//循環(huán)體,就是要反復(fù)執(zhí)行的語句塊
【循環(huán)變量值的改變】
}

do while循環(huán)結(jié)構(gòu):

do while循環(huán)是一種會先執(zhí)行一次,然后再根據(jù)判斷條件來決定是否繼續(xù)執(zhí)行并循環(huán)的一種循環(huán)結(jié)構(gòu)。
do while的實用形式如下:
【循環(huán)變量初始化】
do
{
//循環(huán)體,就是要反復(fù)執(zhí)行的語句塊
【循環(huán)變量值的改變】
} while ( 【循環(huán)變量作為條件判斷】 ) ;

  • 描述: 先執(zhí)行do后面打括號中的語句塊,然后再進行while語句中的條件判斷,如果判斷成立(true),則繼續(xù)回到上面do后面的大括號中執(zhí)行語句塊,否則就結(jié)束。

for循環(huán)結(jié)構(gòu)——推薦使用:

for循環(huán)基本形式:
for( 【循環(huán)變量初始化A】; 【循環(huán)變量作為條件判斷B】; 【循環(huán)變量值的改變C】 )
{
//循環(huán)體D,也就是要反復(fù)執(zhí)行的語句塊
}
for循環(huán)的執(zhí)行邏輯(順序):
A ==> B==>true ==> D ==> C ==>B==>true ==> D ==> C ==> B==>
┗==>false==>for循環(huán)結(jié)束 ┗==>false==>for循環(huán)結(jié)束

var a = new Date(); //new Date() 就是指“系統(tǒng)時間”,該時間其實就是一個“復(fù)合數(shù)據(jù)”,其中包括了時間(日期)中的各項值,比如年份數(shù),月份數(shù),時分秒,星期等等。其中每個數(shù)據(jù)都是一個“數(shù)字”而已。
var week = a.getDay(); //獲取今天系統(tǒng)時間對應(yīng)的星期,這里獲取的星期只是一個0到6的數(shù)而已。0代表禮拜天,1代表禮拜一。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

  • Swift 提供了類似 C 語言的流程控制結(jié)構(gòu),包括可以多次執(zhí)行任務(wù)的for和while循環(huán),基于特定條件選擇執(zhí)行...
    窮人家的孩紙閱讀 722評論 1 1
  • Swift提供了多種控制流聲明。包括while循環(huán)來多次執(zhí)行一個任務(wù);if,guard和switch聲明來根據(jù)確定...
    BoomLee閱讀 1,984評論 0 3
  • 1 順序語句 語句:使用分號分隔的代碼稱作為一個語句。 注意:沒有寫任何代碼只是一個分號的時候,也是一條語句,...
    哈哈哎呦喂閱讀 408評論 0 0
  • 現(xiàn)在的很多家長認為,所謂快樂教育就是什么都不給孩子教,自己作為父母也不用去引導(dǎo),哪怕在玩中讓孩子學(xué)習(xí),都不去研究,...
    涵涵媽育兒閱讀 786評論 0 0
  • 01 正在美夢時刻,被一電話吵醒。是堂哥打來,電話聲音稍顯急促,告知讓我抽時間把我準(zhǔn)備出租房的鎖換了。原因是他女兒...
    浪小客閱讀 265評論 2 2