位運(yùn)算符:
位運(yùn)算符只針對(duì)數(shù)字的二進(jìn)制形式進(jìn)行扇丛。
var v1 = 5; //這是10進(jìn)制滩褥,二進(jìn)制其實(shí)是:101,在計(jì)算機(jī)內(nèi)部其實(shí)類似這樣: 00000101
var v2 = 6晾捏; //這是10進(jìn)制谎懦,二進(jìn)制其實(shí)是:110,在計(jì)算機(jī)內(nèi)部其實(shí)類似這樣: 00000110
按位與:
符號(hào): &
含義:將兩個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位上的數(shù)字進(jìn)行“與運(yùn)算”姨伤,結(jié)果還是這些位運(yùn)算的結(jié)果組成的二進(jìn)制數(shù)所代表的值。
解釋:二進(jìn)制數(shù)字進(jìn)行“與運(yùn)算”的規(guī)則是:
1 & 1 è 1
1 & 0 è 0
0 & 1 è 0
0 & 0 è 0
舉例:
var v1 = 5,? v2 = 6贩幻,運(yùn)算圖示為:
v1=5 0 0 0 0 0 1 0 1
v2=6 0 0 0 0 0 1 1 0
v1 & v2 0 0 0 0 0 1 0 0
var v3 = v1 & v2 = 00000100(2) = 4(10)
按位或:
符號(hào): |
含義:將兩個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位上的數(shù)字進(jìn)行“或運(yùn)算”轿腺,結(jié)果是這些位運(yùn)算的結(jié)果組成的二進(jìn)制數(shù)所代表的值两嘴。
解釋:二進(jìn)制數(shù)字進(jìn)行“或運(yùn)算”的規(guī)則是:
1 | 1 è 1
1 | 0 è 1
0 | 1 è 1
0 | 0 è 0
按位非:
符號(hào): ~ //這是一個(gè)“單目運(yùn)算符”
含義:將一個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位上的數(shù)字進(jìn)行“非運(yùn)算”,結(jié)果是這些二進(jìn)制數(shù)字所代表的值族壳。
解釋:二進(jìn)制數(shù)字進(jìn)行“非運(yùn)算”的規(guī)則是:
~1? è? 0
~0? è? 1
按位左移運(yùn)算:
符號(hào): <<
含義: 將一個(gè)二進(jìn)制數(shù)的每一個(gè)位上的數(shù)字往左邊移動(dòng)指定的位數(shù)憔辫,并且左邊“冒”出去的就不管了(不算了),右邊空出來(lái)的位上填入“0”仿荆,得到的結(jié)果就是該二進(jìn)制數(shù)字所代表的值贰您。
舉例:
var v1 = 5;var? v2 = 5 << 2; 運(yùn)算圖示為:
v1=5 0 0 0 0 0 1 0 1
v2= 5 << 2 0 0 0 1 0 1 0 0
var v2 = 5 << 2 = 00010100(2) = 1 * 24 + 1*22 = 16+4 = 20(10)
按位左移運(yùn)算:
符號(hào): >>
含義: 將一個(gè)二進(jìn)制數(shù)的每一個(gè)位上的數(shù)字往右邊移動(dòng)指定的位數(shù)赖歌,并且右邊“冒”出去的就不管了(不算了)枉圃,左邊空出來(lái)的位上填入原來(lái)的左邊的數(shù)字功茴,得到的結(jié)果就是該二進(jìn)制數(shù)字所代表的值庐冯。
舉例:
var v1 = 5;var? v2 = 5 >> 2; 運(yùn)算圖示為:
v1=5 0 0 0 0 0 1 0 1
v2= 5 >> 2 0 0 0 0 0 0 0 1
var v2 = 5 >> 2 = 00000001(2) = 1(10)
運(yùn)算符其他內(nèi)容:
賦值運(yùn)算符:其實(shí)就一個(gè)基本的賦值運(yùn)算符: = ,其含義是將等號(hào)右邊的數(shù)據(jù)放到等號(hào)左邊的變量中去坎穿。
錯(cuò)誤的語(yǔ)法:
var v1 = 1,? v2 = 2,? v3 = 5,? v4 = -2;
v1 + v2 = v3 + v4; //錯(cuò)展父,大錯(cuò),大錯(cuò)特錯(cuò)
復(fù)合賦值運(yùn)算符: +=? -=? *=? /=? %=
運(yùn)算符的優(yōu)先級(jí) —— 太多玲昧,較為復(fù)雜栖茉,記不住,但請(qǐng)記住一下幾條規(guī)則:
1孵延, 要心如明鏡:運(yùn)算符有優(yōu)先級(jí)(先后順序)問(wèn)題吕漂。
2, 括號(hào)最優(yōu)先尘应,等號(hào)(賦值)最落后惶凝。
3, 先乘除后加減
4犬钢, 想不清楚或用不明白的苍鲜,使用括號(hào)來(lái)解決
5, 括號(hào)只有小括號(hào)玷犹,可以一層層嵌套混滔。
舉例:
var? year = 2013;
//判斷閏年:一個(gè)年份能被4整除并且不能被100整除是閏年,或者能被400整除歹颓,也是閏年坯屿。
if (? ( (year? %? 4 == 0)? &&? (year % 100 != 0) )? ||? (year % 400 == 0)? )
{? documment.write(? year? + “是閏年”)? ;}
數(shù)據(jù)的傳值方式:
var v1 = 10;
var v2 = v1;? ? //將v1中值拷貝一份,放到v2這個(gè)變量中去了——此時(shí)也可以說(shuō)成“將v1的值傳遞給v2”
var v1 = v1 + v1;? ? //v1的值改變了巍扛,但并不影響v2——因?yàn)関2本身也是一個(gè)獨(dú)立的變量愿伴。document.write(“<br/>v1=" + v1);? ? ? ? //20
document.write("<br/>v2=" + v2);? ? ? ? //10
上述“v2 = v1”就稱為“拷貝傳值”——取得v1的值并拷貝一份,然后賦值給v2
拷貝傳值圖示如下:
var v3 = {name:"小花", age:18, edu:"大學(xué)" };? ? //這是一個(gè)所謂“對(duì)象”類型——其中包括了3個(gè)數(shù)據(jù)电湘。
//操作其中的數(shù)據(jù)類似這樣:document.write("<br />v3這個(gè)對(duì)象的年齡為:" + v3.age);
v3.age = 19;? //v3這個(gè)對(duì)象的age這項(xiàng)數(shù)據(jù)的值重復(fù)賦了一個(gè)新值隔节,類似前面v1 = 20;
var v4 = v3;? ? //此時(shí)鹅经,是將v3這個(gè)變量的“內(nèi)存地址”傳遞給v4這個(gè)變量,而v3這個(gè)對(duì)象的數(shù)據(jù)本身其實(shí)只是由該地址來(lái)獲取怎诫●危——這就叫做引用傳值——此時(shí),其實(shí)這兩個(gè)變量是一樣的數(shù)據(jù)內(nèi)容幻妓,類似一個(gè)人的多個(gè)名字:真名蹦误,藝名,網(wǎng)名肉津,小名
document.write("<br />v4這個(gè)對(duì)象的年齡為:" + v4.age);
v3.age = 20;? //
document.write("<br />此時(shí)强胰,v4這個(gè)對(duì)象的年齡為:" + v4.age);
圖示:
注意: 基本(簡(jiǎn)單)數(shù)據(jù)類型的變量名和數(shù)據(jù)是直接存在“快速內(nèi)存”(棧內(nèi)存)中,而復(fù)合數(shù)據(jù)類型(對(duì)象和數(shù)組)的存儲(chǔ)分兩個(gè)部分:實(shí)際數(shù)據(jù)存在“慢速內(nèi)存”(堆內(nèi)存)中妹沙,棧內(nèi)存中只存變量名和數(shù)據(jù)在堆內(nèi)存中的位置(地址)偶洋。如圖所示:
總結(jié):? ? ? ? 在js中,基本數(shù)據(jù)類型使用“拷貝傳值”——傳值的時(shí)候直接就出現(xiàn)了一份新的數(shù)據(jù)(當(dāng)然同時(shí)也是另一個(gè)變量所代表)
? ? ? 復(fù)合數(shù)據(jù)類型(數(shù)組和對(duì)象)使用“引用傳值”——傳值的時(shí)候只是做了一個(gè)地址指向距糖,數(shù)據(jù)仍然只有一份玄窝,兩個(gè)變量就指向這同一份數(shù)據(jù)。
if分支結(jié)構(gòu):
控制結(jié)構(gòu):就是使用一定的語(yǔ)法來(lái)控制我們程序執(zhí)行的流程——也可以叫“流程控制結(jié)構(gòu)”
分支就是“多條路徑悍引,走一條”恩脂。
最簡(jiǎn)形式:
//如果此條件滿足(即條件判斷的結(jié)果是true),則會(huì)執(zhí)行其中的語(yǔ)句塊趣斤,否則什么也不做俩块。
if(? 條件判斷語(yǔ)句? )
{
//要執(zhí)行的語(yǔ)句塊——語(yǔ)句塊其實(shí)就是一種表示“n條語(yǔ)句”泛泛說(shuō)法。
}
二選一分支形式:含義是兩條路浓领,必走一條玉凯。
if(? 條件判斷語(yǔ)句? )
{
//要執(zhí)行的語(yǔ)句塊1——前面條件成立時(shí)執(zhí)行
}
else
{
//要執(zhí)行的語(yǔ)句塊2——前面條件不成立時(shí)執(zhí)行
}
多選一分支結(jié)構(gòu):多條路根據(jù)條件的滿足情況走其中一條,但也可能一條都不走:
if(? 條件判斷1 ) //如果此條件滿足镊逝,則執(zhí)行語(yǔ)句塊1壮啊,然后if就結(jié)束了
{
//語(yǔ)句塊1
}
else? if ( 條件判斷2? ) //如果條件1不滿足,則判斷條件2:如果滿足撑蒜,則執(zhí)行語(yǔ)句塊2歹啼,并結(jié)束if
{
//語(yǔ)句塊2
}
else? if ( 條件判斷3? ) //如果條件2不滿足,則判斷條件3:如果滿足座菠,則執(zhí)行語(yǔ)句塊3狸眼,并結(jié)束if
{
//語(yǔ)句塊3
}
…………………… //依此類推。浴滴。拓萌。。升略。微王。如果沒(méi)有一個(gè)條件滿足屡限,則其實(shí)到最后什么也不會(huì)執(zhí)行,if結(jié)束炕倘。
綜合型式:
if(? 條件判斷1 ) //如果此條件滿足钧大,則執(zhí)行語(yǔ)句塊1,然后if就結(jié)束了
{
//語(yǔ)句塊1
}
else? if ( 條件判斷2? ) //如果條件1不滿足罩旋,則判斷條件2:如果滿足啊央,則執(zhí)行語(yǔ)句塊2,并結(jié)束if
{
//語(yǔ)句塊2
}
else? if ( 條件判斷3? ) //如果條件2不滿足涨醋,則判斷條件3:如果滿足瓜饥,則執(zhí)行語(yǔ)句塊3,并結(jié)束if
{
//語(yǔ)句塊3
}
…………….? //依此類推浴骂。乓土。。靠闭。帐我。坎炼。
else
{
//最后的else語(yǔ)句塊愧膀。 //此語(yǔ)句塊會(huì)在前面條件都不滿足的時(shí)候去執(zhí)行。
}
注意:綜合型式中是必有一條分支(語(yǔ)句塊)會(huì)得到執(zhí)行谣光。
switch分支結(jié)構(gòu):
switch的分支結(jié)構(gòu)整體含義跟if類似檩淋,也是表示“多條路走一條”,其使用形式:
switch (? 一個(gè)變量或表達(dá)式? ) //不管是變量還是表達(dá)式萄金,最終都代表一個(gè)“值”蟀悦,我們用v1來(lái)說(shuō)話
{
case? 固定值1: //如果v1等于本值1,則會(huì)執(zhí)行語(yǔ)句塊1
//語(yǔ)句塊1氧敢;
break日戈; //退出此switch結(jié)構(gòu)
case? 固定值2: 如果v1不等于前面值1,則繼續(xù)判斷是否等于這里的值2孙乖,如果相等浙炼,執(zhí)行語(yǔ)句2
//語(yǔ)句塊2;
break唯袄; //退出此switch結(jié)構(gòu)
case? ………………………………
弯屈。。恋拷。资厉。。蔬顾。宴偿。湘捎。。窄刘。消痛。。都哭。秩伞。。欺矫。纱新。
default: //如果前面各個(gè)判斷都不成立(也就是不相等),則會(huì)執(zhí)行此語(yǔ)句塊穆趴。
//注意:switch中此default語(yǔ)句塊可以沒(méi)有脸爱。
//默認(rèn)語(yǔ)句塊
}
特別注意:if語(yǔ)句其實(shí)是可以使用非常靈活的條件判斷,比如? >? >=? <? <=? ==? !=? ===? 未妹,但簿废,switch這里case的判斷,只能有一種判斷:相等判斷络它。
while循環(huán)結(jié)構(gòu):
循環(huán)的基本觀念:
1族檬, 循環(huán)就是讓某些程序(語(yǔ)句塊)反復(fù)執(zhí)行
2, 循環(huán)必須能夠有辦法停止——計(jì)算機(jī)沒(méi)有自己的判斷能力去決定“累了化戳,不做了”
while循環(huán)的基本語(yǔ)法形式:
while? (? 條件判斷? ) //如果條件判斷滿足了单料,則會(huì)執(zhí)行其中的語(yǔ)句塊,否則while結(jié)束点楼。
{
//要執(zhí)行的語(yǔ)句塊
} //如果此語(yǔ)句塊執(zhí)行完了扫尖,會(huì)立即回到前面while的位置繼續(xù)判斷。
上述形式只是語(yǔ)法上的基本要求掠廓,但换怖,在“實(shí)用”中,通常會(huì)需要遵照如下模式:
【循環(huán)變量初始化】
while? (? 【循環(huán)變量作為條件判斷】 )
{
//循環(huán)體蟀瞧,就是要反復(fù)執(zhí)行的語(yǔ)句塊
【循環(huán)變量值的改變】
}
do while循環(huán)結(jié)構(gòu):
do while循環(huán)是一種會(huì)先執(zhí)行一次沉颂,然后再根據(jù)判斷條件來(lái)決定是否繼續(xù)執(zhí)行并循環(huán)的一種循環(huán)結(jié)構(gòu)。
do while的實(shí)用形式如下:
【循環(huán)變量初始化】
do
{
//循環(huán)體黄橘,就是要反復(fù)執(zhí)行的語(yǔ)句塊
【循環(huán)變量值的改變】
} while? (? 【循環(huán)變量作為條件判斷】 ) ;
描述: 先執(zhí)行do后面打括號(hào)中的語(yǔ)句塊兆览,然后再進(jìn)行while語(yǔ)句中的條件判斷,如果判斷成立(true)塞关,則繼續(xù)回到上面do后面的大括號(hào)中執(zhí)行語(yǔ)句塊抬探,否則就結(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í)行的語(yǔ)句塊
}
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)時(shí)間”,該時(shí)間其實(shí)就是一個(gè)“復(fù)合數(shù)據(jù)”怠益,其中包括了時(shí)間(日期)中的各項(xiàng)值仪搔,比如年份數(shù),月份數(shù)蜻牢,時(shí)分秒烤咧,星期等等。其中每個(gè)數(shù)據(jù)都是一個(gè)“數(shù)字”而已抢呆。
var week = a.getDay(); //獲取今天系統(tǒng)時(shí)間對(duì)應(yīng)的星期煮嫌,這里獲取的星期只是一個(gè)0到6的數(shù)而已。0代表禮拜天抱虐,1代表禮拜一昌阿。
昨日回顧
位運(yùn)算符:指對(duì)二進(jìn)制數(shù)字進(jìn)行的運(yùn)算
按位左移:將所有數(shù)位往左邊移動(dòng)指定的位數(shù),左邊冒出去的不管恳邀,右邊補(bǔ)0
按位右移:將所有數(shù)位往右邊移動(dòng)指定的位數(shù)懦冰,右邊冒出去的不管,左邊補(bǔ)原來(lái)左邊的數(shù)字(0或1)
按位與:將兩個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位進(jìn)行二進(jìn)制數(shù)的“相與”(只有兩個(gè)是1才是1)
按位或:將兩個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位進(jìn)行二進(jìn)制數(shù)的“相或”(只有兩個(gè)是0才是0)
按位非:將一個(gè)二進(jìn)制數(shù)字的每一位“取反”所得結(jié)果谣沸。
傳值方式:指將一個(gè)變量(A)的值傳給另一個(gè)變量(B)的時(shí)候的不同機(jī)制問(wèn)題
拷貝傳值:將變量A的值做一份“拷貝”刷钢,并賦值給另一個(gè)變量B——B和A此時(shí)是兩個(gè)相互獨(dú)立的變量,但此時(shí)的值相同(相等)——js中鳄抒,基本數(shù)據(jù)類型使用拷貝傳值闯捎。
引用傳值:將變量A的實(shí)際數(shù)據(jù)的“地址”拷貝給變量B(并沒(méi)有拷貝數(shù)據(jù))——B和A是兩個(gè)有關(guān)系的變量椰弊,即他們實(shí)際上就是指“一份數(shù)據(jù)”许溅,類似“同樣的內(nèi)容不同的名字”——在js中,復(fù)合數(shù)據(jù)類型使用引用傳值秉版。
流程控制之 if? 分支結(jié)構(gòu)
if( 條件判斷1 )
{
//語(yǔ)句塊1
}
else? if( 條件判斷2 )
{
//語(yǔ)句塊2
}
else? if( 條件判斷3 )
{
//語(yǔ)句塊3
}
贤重。。清焕。并蝗。。秸妥。滚停。。粥惧。键畴。。。
else
{
//else語(yǔ)句塊
}
流程控制之 switch 分支結(jié)構(gòu)
switch (? 一個(gè)變量或表達(dá)式? ) //這里最終都應(yīng)該是一個(gè)“值”
{
case? 值1:
語(yǔ)句塊1
break;
case? 值2:
語(yǔ)句塊2
break起惕;
涡贱。。惹想。问词。。嘀粱。激挪。。锋叨。灌灾。。悲柱。锋喜。。豌鸡。嘿般。。涯冠。
default:
默認(rèn)語(yǔ)句塊
}
流程控制之 while 循環(huán)結(jié)構(gòu)
循環(huán)變量的初始化
while? (? 循環(huán)變量判斷 )
{
//語(yǔ)句塊
循環(huán)變量的改變
}
流程控制之 do while 循環(huán)結(jié)構(gòu)
循環(huán)變量的初始化
do
{
//語(yǔ)句塊
循環(huán)變量的改變
}
while (? 循環(huán)變量判斷 );
流程控制之 for 循環(huán)結(jié)構(gòu)
for(? 循環(huán)變量的初始化炉奴;循環(huán)變量判斷;循環(huán)變量的改變 )
{
//語(yǔ)句塊
}
昨日回顧
位運(yùn)算符:指對(duì)二進(jìn)制數(shù)字進(jìn)行的運(yùn)算
按位左移:將所有數(shù)位往左邊移動(dòng)指定的位數(shù)蛇更,左邊冒出去的不管瞻赶,右邊補(bǔ)0
按位右移:將所有數(shù)位往右邊移動(dòng)指定的位數(shù),右邊冒出去的不管派任,左邊補(bǔ)原來(lái)左邊的數(shù)字(0或1)
按位與:將兩個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位進(jìn)行二進(jìn)制數(shù)的“相與”(只有兩個(gè)是1才是1)
按位或:將兩個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位進(jìn)行二進(jìn)制數(shù)的“相或”(只有兩個(gè)是0才是0)
按位非:將一個(gè)二進(jìn)制數(shù)字的每一位“取反”所得結(jié)果砸逊。
傳值方式:指將一個(gè)變量(A)的值傳給另一個(gè)變量(B)的時(shí)候的不同機(jī)制問(wèn)題
拷貝傳值:將變量A的值做一份“拷貝”,并賦值給另一個(gè)變量B——B和A此時(shí)是兩個(gè)相互獨(dú)立的變量掌逛,但此時(shí)的值相同(相等)——js中师逸,基本數(shù)據(jù)類型使用拷貝傳值。
引用傳值:將變量A的實(shí)際數(shù)據(jù)的“地址”拷貝給變量B(并沒(méi)有拷貝數(shù)據(jù))——B和A是兩個(gè)有關(guān)系的變量豆混,即他們實(shí)際上就是指“一份數(shù)據(jù)”篓像,類似“同樣的內(nèi)容不同的名字”——在js中,復(fù)合數(shù)據(jù)類型使用引用傳值皿伺。
流程控制之 if? 分支結(jié)構(gòu)
if( 條件判斷1 )
{
//語(yǔ)句塊1
}
else? if( 條件判斷2 )
{
//語(yǔ)句塊2
}
else? if( 條件判斷3 )
{
//語(yǔ)句塊3
}
员辩。。鸵鸥。奠滑。。。养叛。种呐。。弃甥。爽室。。
else
{
//else語(yǔ)句塊
}
流程控制之 switch 分支結(jié)構(gòu)
switch (? 一個(gè)變量或表達(dá)式? ) //這里最終都應(yīng)該是一個(gè)“值”
{
case? 值1:
語(yǔ)句塊1
break;
case? 值2:
語(yǔ)句塊2
break淆攻;
阔墩。。瓶珊。啸箫。。伞芹。忘苛。。唱较。扎唾。。南缓。胸遇。。汉形。纸镊。。概疆。
default:
默認(rèn)語(yǔ)句塊
}
流程控制之 while 循環(huán)結(jié)構(gòu)
循環(huán)變量的初始化
while? (? 循環(huán)變量判斷 )
{
//語(yǔ)句塊
循環(huán)變量的改變
}
流程控制之 do while 循環(huán)結(jié)構(gòu)
循環(huán)變量的初始化
do
{
//語(yǔ)句塊
循環(huán)變量的改變
}
while (? 循環(huán)變量判斷 );
流程控制之 for 循環(huán)結(jié)構(gòu)
for(? 循環(huán)變量的初始化逗威;循環(huán)變量判斷;循環(huán)變量的改變 )
{
//語(yǔ)句塊
}
昨日回顧
位運(yùn)算符:指對(duì)二進(jìn)制數(shù)字進(jìn)行的運(yùn)算
按位左移:將所有數(shù)位往左邊移動(dòng)指定的位數(shù)届案,左邊冒出去的不管庵楷,右邊補(bǔ)0
按位右移:將所有數(shù)位往右邊移動(dòng)指定的位數(shù),右邊冒出去的不管楣颠,左邊補(bǔ)原來(lái)左邊的數(shù)字(0或1)
按位與:將兩個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位進(jìn)行二進(jìn)制數(shù)的“相與”(只有兩個(gè)是1才是1)
按位或:將兩個(gè)二進(jìn)制數(shù)字的對(duì)應(yīng)位進(jìn)行二進(jìn)制數(shù)的“相或”(只有兩個(gè)是0才是0)
按位非:將一個(gè)二進(jìn)制數(shù)字的每一位“取反”所得結(jié)果。
傳值方式:指將一個(gè)變量(A)的值傳給另一個(gè)變量(B)的時(shí)候的不同機(jī)制問(wèn)題
拷貝傳值:將變量A的值做一份“拷貝”咐蚯,并賦值給另一個(gè)變量B——B和A此時(shí)是兩個(gè)相互獨(dú)立的變量童漩,但此時(shí)的值相同(相等)——js中,基本數(shù)據(jù)類型使用拷貝傳值春锋。
引用傳值:將變量A的實(shí)際數(shù)據(jù)的“地址”拷貝給變量B(并沒(méi)有拷貝數(shù)據(jù))——B和A是兩個(gè)有關(guān)系的變量矫膨,即他們實(shí)際上就是指“一份數(shù)據(jù)”,類似“同樣的內(nèi)容不同的名字”——在js中,復(fù)合數(shù)據(jù)類型使用引用傳值侧馅。
流程控制之 if? 分支結(jié)構(gòu)
if( 條件判斷1 )
{
//語(yǔ)句塊1
}
else? if( 條件判斷2 )
{
//語(yǔ)句塊2
}
else? if( 條件判斷3 )
{
//語(yǔ)句塊3
}
危尿。。馁痴。谊娇。。罗晕。济欢。。小渊。法褥。。酬屉。
else
{
//else語(yǔ)句塊
}
流程控制之 switch 分支結(jié)構(gòu)
switch (? 一個(gè)變量或表達(dá)式? ) //這里最終都應(yīng)該是一個(gè)“值”
{
case? 值1:
語(yǔ)句塊1
break;
case? 值2:
語(yǔ)句塊2
break半等;
。呐萨。酱鸭。。垛吗。凹髓。。怯屉。蔚舀。。锨络。赌躺。。羡儿。礼患。。掠归。缅叠。
default:
默認(rèn)語(yǔ)句塊
}
流程控制之 while 循環(huán)結(jié)構(gòu)
循環(huán)變量的初始化
while? (? 循環(huán)變量判斷 )
{
//語(yǔ)句塊
循環(huán)變量的改變
}
流程控制之 do while 循環(huán)結(jié)構(gòu)
循環(huán)變量的初始化
do
{
//語(yǔ)句塊
循環(huán)變量的改變
}
while (? 循環(huán)變量判斷 );
流程控制之 for 循環(huán)結(jié)構(gòu)
for(? 循環(huán)變量的初始化;循環(huán)變量判斷虏冻;循環(huán)變量的改變 )
{
//語(yǔ)句塊
}