摘要:在里面,一般我們想讓程序在里面執(zhí)行到一半時(shí),經(jīng)過判斷或者完成某種操作后停止執(zhí)行后面的代碼,會用結(jié)束掉??梢栽谥虚g加入多個(gè)作為斷點(diǎn),控制邏輯的流程。
在JavaScript里面,一般我們想讓程序在function里面執(zhí)行到一半時(shí),經(jīng)過判斷或者完成某種操作后停止執(zhí)行后面的代碼,會用return結(jié)束掉function。
例如:
//去除前后的空格
function spaceWord(vRet){
if(!vRet) return vRet; //條件循環(huán) 當(dāng)不滿足自身的條件的時(shí)候繼續(xù)循環(huán),當(dāng)達(dá)到條件的時(shí)候 終止運(yùn)行 一般用return //while這樣的循環(huán)語句可以中斷代碼的執(zhí)行, while (true) {//推出條件 if (vRet.indexOf (" ") == 0) { vRet = vRet.substring(1, parseInt(vRet.length)); } else if ((parseInt(vRet.length) != 0) && (vRet.lastIndexOf (" ") == parseInt(vRet.length) - 1)) { vRet = vRet.substring(0, parseInt(vRet.length) - 1); } else { return vRet;//使用return 終止運(yùn)行 跳出執(zhí)行體 } }
}
console.log(spaceWord(spaceStr));
但是,如果我要做多層的判斷,而且要中斷的只是其中一個(gè)判斷后面的代碼呢?
function(){
//代碼1... if(stopRun == true){ //代碼2 ... if(cando == false){ return } //代碼3 ... } //代碼4 ...
}
如果使用return 終止運(yùn)行,則代碼3與代碼4則不能執(zhí)行;
對用這種需求妙用break來實(shí)現(xiàn)代碼的中斷,而不結(jié)束整個(gè)函數(shù)。
例如:
var stopRun = true,cando = false;
function ww(){
//代碼1... while(stopRun == true){ //代碼2 ... console.log(2) if(cando == false){ break } //代碼3 ... console.log(3) break } //代碼4 ... console.log(4)
}
上面的邏輯,當(dāng)執(zhí)行到代碼2語句時(shí),遇到break語句,則代碼跳出循環(huán)執(zhí)行代碼4 則運(yùn)行輸出為:2 4;則證明代碼3被阻止了,但是沒有阻止函數(shù)的運(yùn)行;
break不能在if里面用,但是可以在循環(huán)里面用,所以用while這樣的循環(huán)語句可以中斷代碼的執(zhí)行,理論上所有循環(huán)都可以實(shí)現(xiàn)該功能,選擇while是因?yàn)樗啙嵍铱梢源鎖f做判斷。
!!!注意!!!while最后記得加上一個(gè)break,不然會變成死循環(huán)。
可以在while中間加入多個(gè)if()break作為斷點(diǎn),控制邏輯的流程。
function(){
var a=0; while(a==0){ console.log("我要") a++ if(a!=1)break console.log("我再要") a++ if(a!=2)break console.log("我還要") break }
}
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/102592.html
摘要:注意必須把運(yùn)算符的結(jié)果進(jìn)行顯示轉(zhuǎn)換為布爾值,才能匹配因?yàn)榈谋磉_(dá)式的返回值不是布爾類型,它返回的是表達(dá)式中第一個(gè)為或第一個(gè)為的那個(gè)值所以,只要你想得到的,只要符合規(guī)則,都能用實(shí)現(xiàn)就是不知道這樣寫的代碼好不好了 switch語句的普通用法很簡單,如下: var a = 3; switch (a) { case 1: console.log(a); b...
摘要:上個(gè)月,學(xué)習(xí)群里的同學(xué)問了個(gè)題目,大意可理解為列表降維,例子如下想得到結(jié)果原始數(shù)據(jù)是一個(gè)二維列表,目的是獲取該列表中所有元素的具體值。不經(jīng)意間,函數(shù)的注意事項(xiàng),竟把其它的進(jìn)階內(nèi)容都聯(lián)系起來了。小小的函數(shù),竟成為學(xué)習(xí)之路上的一個(gè)樞紐。 上個(gè)月,學(xué)習(xí)群里的 S 同學(xué)問了個(gè)題目,大意可理解為列表降維 ,例子如下: oldlist = [[1, 2, 3], [4, 5]] # 想得到結(jié)果:...
閱讀 615·2019-08-30 15:55
閱讀 1029·2019-08-29 15:35
閱讀 1283·2019-08-29 13:48
閱讀 2018·2019-08-26 13:29
閱讀 3029·2019-08-23 18:26
閱讀 1326·2019-08-23 18:20
閱讀 2915·2019-08-23 16:43
閱讀 2776·2019-08-23 15:58