JavaScript語(yǔ)句

if語(yǔ)句

if (condition) {statement1} else {statement2};
其中的 condition(條件)可以是任意表達(dá)式;而且對(duì)這個(gè)表達(dá)式求值的結(jié)果不一定是布爾值元媚。
ECMAScript 會(huì)自動(dòng)調(diào)用 Boolean()轉(zhuǎn)換函數(shù)將這個(gè)表達(dá)式的結(jié)果轉(zhuǎn)換為一個(gè)布爾值狂打。如果對(duì) condition
求值的結(jié)果是 true物喷,則執(zhí)行 statement1(語(yǔ)句 1),如果對(duì) condition求值的結(jié)果是 false,則執(zhí)行 statement2
(語(yǔ)句 2)希停。而且這兩個(gè)語(yǔ)句既可以是一行代碼盯捌,也可以是一個(gè)代碼塊(以一對(duì)花括號(hào)括起來(lái)的多行代碼)淳衙。

do-while語(yǔ)句

do-while 語(yǔ)句是一種后測(cè)試循環(huán)語(yǔ)句,即只有在循環(huán)體中的代碼執(zhí)行之后挽唉,才會(huì)測(cè)試出口條件滤祖。
換句話說(shuō),在對(duì)條件表達(dá)式求值之前瓶籽,循環(huán)體內(nèi)的代碼至少會(huì)被執(zhí)行一次匠童。以下是 do-while 語(yǔ)句的
語(yǔ)法:
do {
statement
} while (expression);

tip:先執(zhí)行任務(wù)在對(duì)比結(jié)果,這種后測(cè)試循環(huán)語(yǔ)句最常用于循環(huán)體中的代碼至少要被執(zhí)行一次的情形塑顺;

while語(yǔ)句

while 語(yǔ)句屬于前測(cè)試循環(huán)語(yǔ)句汤求,在循環(huán)體內(nèi)的代碼被執(zhí)行之前,就會(huì)對(duì)出口條件求值严拒。因此扬绪,循環(huán)體內(nèi)的代碼有可能永遠(yuǎn)不會(huì)被執(zhí)行。
while(expression) {statement};

for語(yǔ)句

前測(cè)試循環(huán)語(yǔ)句裤唠,具有在執(zhí)行循環(huán)之前初始化變量和定義循環(huán)后要執(zhí)行的代
碼的能力挤牛。
for (initialization; expression; post-loop-expression) {statement};

for-in語(yǔ)句

for-in 語(yǔ)句是一種精準(zhǔn)的迭代語(yǔ)句,可以用來(lái)枚舉對(duì)象的屬性种蘸。
for (property in expression) {statement};

laber語(yǔ)句

使用 label 語(yǔ)句可以在代碼中添加標(biāo)簽墓赴,以便將來(lái)使用。
通俗理解給代碼塊起了個(gè)名字;以便將來(lái)使用
label: {statement} ;
laber 標(biāo)簽可以在將來(lái)由 break 或 continue 語(yǔ)句引用

break和continue語(yǔ)句

break 語(yǔ)句會(huì)立即退出循環(huán)航瞭,強(qiáng)制繼續(xù)執(zhí)行循環(huán)后面的語(yǔ)句诫硕。
而 continue 語(yǔ)句雖然也是立即退出循環(huán),但退出循環(huán)后會(huì)從循環(huán)的頂部繼續(xù)執(zhí)行(單純的跳過(guò)本次循環(huán))

tip:但如果使用過(guò)度刊侯,也會(huì)給調(diào)試帶來(lái)麻煩章办。在此,我們建議如果使用 label 語(yǔ)句,一定要使用描述性的標(biāo)簽藕届,同時(shí)不要嵌套過(guò)多的循環(huán)

with語(yǔ)句

with 語(yǔ)句的作用是將代碼的作用域設(shè)置到一個(gè)特定的對(duì)象中

var qs = location.search.substring(1);
var hostName = location.hostname;
var url = location.href;
//等價(jià)于
with(location){
 var qs = search.substring(1);
 var hostName = hostname;
 var url = href;
} 

tip:嚴(yán)格模式下不允許使用 with 語(yǔ)句挪蹭,否則將視為語(yǔ)法錯(cuò)誤。

大量使用 with 語(yǔ)句會(huì)導(dǎo)致性能下降翰舌,同時(shí)也會(huì)給調(diào)試代碼造成困難嚣潜,因此
在開(kāi)發(fā)大型應(yīng)用程序時(shí),不建議使用 with 語(yǔ)句椅贱。

switch語(yǔ)句

switch (expression) {
case value: statement
break;
case value: statement
break;
case value: statement
break;
case value: statement
break;
default: statement
}

switch 語(yǔ)句中的每一種情形(case)的含義是:“如果表達(dá)式等于這個(gè)值(value)懂算,則執(zhí)行后面的
語(yǔ)句(statement)”。而 break 關(guān)鍵字會(huì)導(dǎo)致代碼執(zhí)行流跳出 switch 語(yǔ)句庇麦。如果省略 break 關(guān)鍵字计技,
就會(huì)導(dǎo)致執(zhí)行完當(dāng)前 case 后,繼續(xù)執(zhí)行下一個(gè) case山橄。最后的 default 關(guān)鍵字則用于在表達(dá)式不匹配前
面任何一種情形的時(shí)候垮媒,執(zhí)行機(jī)動(dòng)代碼(因此,也相當(dāng)于一個(gè) else 語(yǔ)句)航棱。

switch 語(yǔ)句在比較值時(shí)使用的是全等操作符睡雇,因此不會(huì)發(fā)生類(lèi)型轉(zhuǎn)換(例如,
字符串"10"不等于數(shù)值 10)

函數(shù)

ECMAScript 中的函數(shù)使用 function 關(guān)鍵字來(lái)聲明饮醇,后跟一組參數(shù)以及函數(shù)體它抱。
函數(shù)的基本語(yǔ)法如下所示:
function functionName(arg0, arg1,...,argN) {
statements
}
函數(shù)可以通過(guò)其函數(shù)名來(lái)調(diào)用,后面還要加上一對(duì)圓括號(hào)和參數(shù)(圓括號(hào)中的參數(shù)如果有多個(gè)朴艰,
可以用逗號(hào)隔開(kāi))观蓄。
函數(shù)在任何時(shí)候都可以通過(guò)return 語(yǔ)句后跟要返回的值來(lái)實(shí)現(xiàn)返回值
function sum(num1, num2) {
return num1 + num2;
}
個(gè)函數(shù)會(huì)在執(zhí)行完 return 語(yǔ)句之后停止并立即退出,位于 return 語(yǔ)句之后的任何代碼
都永遠(yuǎn)不會(huì)執(zhí)行

function sum(num1, num2) {
 return num1 + num2;
 alert("Hello world"); // 永遠(yuǎn)不會(huì)執(zhí)行
} 

理解參數(shù)

ECMAScript 函數(shù)不介意傳遞進(jìn)來(lái)多少個(gè)參數(shù)祠墅,也不在乎傳進(jìn)來(lái)參數(shù)是什么數(shù)據(jù)類(lèi)型侮穿。
原因是 ECMAScript 中的參數(shù)在內(nèi)部是用一個(gè)數(shù)組來(lái)表示的。函數(shù)接收
到的始終都是這個(gè)數(shù)組毁嗦,而不關(guān)心數(shù)組中包含哪些參數(shù)(如果有參數(shù)的話)亲茅。如果這個(gè)數(shù)組中不包含任何元素,無(wú)所謂狗准;如果包含多個(gè)元素芯急,也沒(méi)有問(wèn)題。實(shí)際上驶俊,在函數(shù)體內(nèi)可以通過(guò) arguments 對(duì)象來(lái)訪問(wèn)這個(gè)參數(shù)數(shù)組,從而獲取傳遞給函數(shù)的每一個(gè)參數(shù)免姿。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末饼酿,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌故俐,老刑警劉巖想鹰,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異药版,居然都是意外死亡辑舷,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén)槽片,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)何缓,“玉大人,你說(shuō)我怎么就攤上這事还栓÷道” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵剩盒,是天一觀的道長(zhǎng)谷婆。 經(jīng)常有香客問(wèn)我,道長(zhǎng)辽聊,這世上最難降的妖魔是什么纪挎? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮跟匆,結(jié)果婚禮上异袄,老公的妹妹穿的比我還像新娘。我一直安慰自己贾铝,他們只是感情好隙轻,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著垢揩,像睡著了一般玖绿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上叁巨,一...
    開(kāi)封第一講書(shū)人閱讀 51,462評(píng)論 1 302
  • 那天斑匪,我揣著相機(jī)與錄音,去河邊找鬼锋勺。 笑死蚀瘸,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的庶橱。 我是一名探鬼主播贮勃,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼苏章!你這毒婦竟也來(lái)了寂嘉?” 一聲冷哼從身側(cè)響起奏瞬,我...
    開(kāi)封第一講書(shū)人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎泉孩,沒(méi)想到半個(gè)月后硼端,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡寓搬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年珍昨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片句喷。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡镣典,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出脏嚷,到底是詐尸還是另有隱情骆撇,我是刑警寧澤,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布父叙,位于F島的核電站神郊,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏趾唱。R本人自食惡果不足惜涌乳,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望甜癞。 院中可真熱鬧夕晓,春花似錦、人聲如沸悠咱。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)析既。三九已至躬贡,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間眼坏,已是汗流浹背拂玻。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留宰译,地道東北人檐蚜。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像沿侈,于是被迫代替她去往敵國(guó)和親闯第。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

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

  • 第2章 基本語(yǔ)法 2.1 概述 基本句法和變量 語(yǔ)句 JavaScript程序的執(zhí)行單位為行(line)缀拭,也就是一...
    悟名先生閱讀 4,149評(píng)論 0 13
  • Lua 5.1 參考手冊(cè) by Roberto Ierusalimschy, Luiz Henrique de F...
    蘇黎九歌閱讀 13,793評(píng)論 0 38
  • 作者的序言 朋友們咳短,棄療系列4出來(lái)啦肃廓,作者還并沒(méi)有放棄,感覺(jué)自己萌萌噠诲泌,233。 語(yǔ)句 js程序其實(shí)就是一系列可執(zhí)...
    zhaolion閱讀 1,752評(píng)論 0 8
  • JavaScript語(yǔ)句 一铣鹏、if語(yǔ)句 語(yǔ)法一: 語(yǔ)法二: 語(yǔ)法三: prompt()語(yǔ)法:prompt()功能:...
    我可能是個(gè)假開(kāi)發(fā)閱讀 410評(píng)論 1 5
  • 十年時(shí)間敷扫,白云蒼狗的一個(gè)輪回,十年時(shí)間讓多少的孩子從無(wú)知里走向了成熟诚卸。也許每個(gè)人的人生里都不會(huì)有太多個(gè)十年葵第,太多個(gè)...
    惡作劇15閱讀 744評(píng)論 0 2