前端學(xué)習(xí)指南第二天:語(yǔ)句

條件語(yǔ)句(簡(jiǎn)單點(diǎn)看妻顶,記住下面的就行了):
if(條件){
//執(zhí)行代碼塊
}

if(條件){
//執(zhí)行代碼塊 }
else{
//執(zhí)行代碼塊
}

if(條件){
//執(zhí)行代碼塊
}
else if(條件){
//執(zhí)行代碼塊}
else{
//執(zhí)行代碼塊
}

switch(n){
case 1://滿足n===1
//執(zhí)行代碼塊1
break;
case 2:滿足n===2
//執(zhí)行代碼塊2
break;
default://都不滿足
//執(zhí)行代碼塊3
break;
}

循環(huán)語(yǔ)句:
while:
var count = 0;
while(count<10){
csonsole.log(count);
count++
}//輸出0~9

do/while://先執(zhí)行,再判斷幔嗦。至少執(zhí)行一次
function printArrary(a){
var len =a.length,i=0;
if(len == 0)
console.log("empty arrary");
else {
do {
console.log(a[i]);
}while(++i<len);
}
}

for://簡(jiǎn)單的循環(huán)
for(var count=0,count++,count<10){
consloe.log(count);
}//輸出0~9

for/in://用于遍歷邀泉,但一般不建議用

for(變量 in 對(duì)象){
//執(zhí)行代碼
}

ECMAScript規(guī)范并沒(méi)有指定for/in循環(huán)按照何種順序來(lái)枚舉對(duì)象屬性。但實(shí)際上汇恤,主流瀏覽器廠商的JavaScript實(shí)現(xiàn)是按照屬性定義的先后順序來(lái)枚舉簡(jiǎn)單對(duì)象的屬性寞埠,先定義的屬性先枚舉。如果使用對(duì)象直接量的形式創(chuàng)建對(duì)象蓝角,則將按照直接量中屬性的出現(xiàn)順序枚舉。有一些網(wǎng)站和Javascript庫(kù)是依賴于這種枚舉順序的使鹅,瀏覽器廠商不大可能會(huì)修改這個(gè)順序。

Javascript解釋器枚舉“簡(jiǎn)單”對(duì)象一種交互的屬性枚舉順序鲁僚。在下列情況下裁厅,枚舉的順序取決于具體的實(shí)現(xiàn)(并且是非交互的):

對(duì)象繼承了可枚舉屬性;

對(duì)象具有整數(shù)數(shù)組索引的屬性执虹;

使用delete刪除了對(duì)象已有的屬性;

使用object.definePropery()或者類似的方法改變了對(duì)象的屬性袋励。

除了所有非繼承的“自有”屬性以外的繼承屬性都往往是可枚舉的茬故,而且可以按照它們定義的順序進(jìn)行枚舉。

如果對(duì)象屬性繼承自多個(gè)“原型”磺芭,也就是說(shuō)它的原型鏈上有多個(gè)對(duì)象,那么鏈上面的每一個(gè)原型對(duì)象的屬性的遍歷也是依照特定順序執(zhí)行的甘邀。

Javascript的一些實(shí)現(xiàn)依照數(shù)字順序來(lái)枚舉數(shù)組屬性垮庐,而不是某種特定的順序。但當(dāng)數(shù)組元素的索引是非數(shù)字或數(shù)組是稀疏數(shù)組(數(shù)組索引是不連續(xù)的)時(shí)它們則按照特定順序枚舉逗抑。

跳轉(zhuǎn)(js的執(zhí)行從一個(gè)位置跳轉(zhuǎn)到另一個(gè)位置):

標(biāo)簽語(yǔ)句:
通過(guò)給一個(gè)語(yǔ)句加標(biāo)簽寒亥,就可以給這個(gè)語(yǔ)句起一個(gè)名字,這樣在程序的任何地方都可以使用這個(gè)名字來(lái)引用它褂傀,可以標(biāo)記任何語(yǔ)句加勤,
但是被標(biāo)記的語(yǔ)句通常是那些循環(huán)語(yǔ)句同波,即while未檩、do/while粟焊、for和for/in語(yǔ)句,通常給循環(huán)命名项棠,就可以使用break語(yǔ)句和continue語(yǔ)句來(lái)
退出循環(huán)或者循環(huán)的某一次迭代香追。
如:

<script type="text/javascript"> 
  outerloop: 
   for (var i = 0; i < 10; i++) 
   { 
     innerloop:  
     for (var j = 0; j < 10; j++) 
      { 
        if (j > 3) 
        { 
          break; 
        } 
        if (i == 2) 
        { 
          break innerloop; 
        } 
        if (i == 4) 
        { 
          break outerloop; 
        } 
        document.write("i=" + i + " j=" + j + "<br>"); 
      } 
   } 
</script>

break:立即退出最內(nèi)層循環(huán)或switch語(yǔ)句

continue:結(jié)束此次循環(huán),轉(zhuǎn)而執(zhí)行園藝場(chǎng)循環(huán)

return:指函數(shù)調(diào)用后返回的值,執(zhí)行到return時(shí)掷匠,函數(shù)終止執(zhí)行岖圈,并將值返回給程序,通常return語(yǔ)句只在函數(shù)內(nèi)體現(xiàn)蜂科。通常return后加語(yǔ)句,也不是一定的

throw語(yǔ)句:
拋出異常才菠,就是有錯(cuò)誤了贡定,就用它把錯(cuò)誤拋出來(lái)

function factorial(x){
//如果輸入?yún)?shù)不符合判斷,就拋出異常
if (x<0) throw new Error(“x不能是負(fù)值”)蚓耽;
//否則旋炒,計(jì)算出一個(gè)值,并正常返回它
for (var f=1;x>1;f*=x,x--)/*empty*/
return f;
}
try
{
   //在此運(yùn)行代碼
}
catch(err)
{
   //在此處理錯(cuò)誤
}

try{ //正常執(zhí)行 }
catch(e/你感覺(jué)會(huì)出錯(cuò)的 錯(cuò)誤類型/)
{
// 可能出現(xiàn)的意外 eg:用戶自己操作失誤 或者 函數(shù)少條件 不影響下面的函數(shù)執(zhí)行
// 有時(shí)也會(huì)用在 比如 focus() 但可惡的ie有可能會(huì)第一次沒(méi)有focus事件 再讓他執(zhí)行一次
// 有時(shí)一些不是bug的bug 在ie上 他要求必須加上 catch 哪怕就一個(gè)空catch
}

with語(yǔ)句:是用來(lái)給對(duì)象添加多個(gè)屬性的瘫镇,語(yǔ)法如下

with(objInstance)  
{  
       var str = 屬性1;  
.....  
} 去除了多次寫對(duì)象名的麻煩答姥。  

3)舉例  
<script language="javascript">  
<!--  
function Lakers() {  
       this.name = "kobe bryant";  
       this.age = "28";  
       this.gender = "boy";  
}  
var people=new Lakers();  
with(people)  
{  
       var str = "姓名: " + name + "<br>";  
       str += "年齡:" + age + "<br>";  
       str += "性別:" + gender;  
       document.write(str);  
}  
//-->  
</script>  
代碼執(zhí)行效果如下:  
姓名: kobe bryant  
年齡:28  
性別:boy

在嚴(yán)格模式中禁止使用with接奈,所以盡量別用。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末睁壁,一起剝皮案震驚了整個(gè)濱河市潘明,隨后出現(xiàn)的幾起案子钳降,更是在濱河造成了極大的恐慌腌巾,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件吓坚,死亡現(xiàn)場(chǎng)離奇詭異礁击,居然都是意外死亡逗载,警方通過(guò)查閱死者的電腦和手機(jī)哆窿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)厉斟,“玉大人挚躯,你說(shuō)我怎么就攤上這事∧笈颍” “怎么了秧均?”我有些...
    開(kāi)封第一講書人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)号涯。 經(jīng)常有香客問(wèn)我目胡,道長(zhǎng),這世上最難降的妖魔是什么链快? 我笑而不...
    開(kāi)封第一講書人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任誉己,我火速辦了婚禮,結(jié)果婚禮上域蜗,老公的妹妹穿的比我還像新娘噪猾。我一直安慰自己袱蜡,他們只是感情好坪蚁,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著嘴脾,像睡著了一般译打。 火紅的嫁衣襯著肌膚如雪扶平。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 49,185評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音猜扮,去河邊找鬼旅赢。 笑死煮盼,一個(gè)胖子當(dāng)著我的面吹牛僵控,可吹牛的內(nèi)容都是我干的报破。 我是一名探鬼主播充易,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼炸茧,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼宇立!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起润脸,我...
    開(kāi)封第一講書人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤毙驯,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后媳搪,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體秦爆,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡爸吮,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了筹误。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖炫七,靈堂內(nèi)的尸體忽然破棺而出侠驯,到底是詐尸還是另有隱情吟策,我是刑警寧澤檩坚,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站赂乐,受9級(jí)特大地震影響挨措,放射性物質(zhì)發(fā)生泄漏运嗜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望反惕。 院中可真熱鬧姿染,春花似錦悬赏、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至畏梆,卻和暖如春具温,著一層夾襖步出監(jiān)牢的瞬間铣猩,已是汗流浹背茴丰。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工峦椰, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留汤功,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像忿族,于是被迫代替她去往敵國(guó)和親错英。 傳聞我的和親對(duì)象是個(gè)殘疾皇子走趋,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

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