return的用法是什么?若用在for循環(huán)中,還會執(zhí)行下一次循環(huán)嗎?

一、背景介紹

什么是return?

return 語句的作用是從當(dāng)前函數(shù)退出,并從那個函數(shù)返回一個值。

用 return 語句來終止一個函數(shù)的執(zhí)行,并返回 expression 的值。如果 expression 被省略, 或在函數(shù)內(nèi)沒有 return 語句被執(zhí)行,則把值 undefined 賦給調(diào)用當(dāng)前函數(shù)的表達(dá)式。

二、知識剖析

return作為返回關(guān)鍵字,它有以下兩種返回方式。

1、返回函數(shù)結(jié)果

語法為:return+表達(dá)式

語句結(jié)束函數(shù)執(zhí)行,返回調(diào)用函數(shù),而且把表達(dá)式的值作為函數(shù)的結(jié)果。

return 表示從被調(diào)函數(shù)返回到主調(diào)函數(shù)繼續(xù)執(zhí)行,返回時可附帶一個返回值, 由return后面的參數(shù)指定。return通常是必要的,因為函數(shù)調(diào)用的時候計算結(jié)果通常是通過返回值帶出的。

2、返回函數(shù)控制

語法為:return;

通常情況下return后面跟有表達(dá)式,但是并不是絕對的。此情況就是單純的將控制權(quán)轉(zhuǎn)交給主調(diào)函數(shù)繼續(xù)執(zhí)行。

在大多數(shù)情況下,為事件處理函數(shù)返回false,可以防止默認(rèn)的事件行為。 例如,默認(rèn)情況下點擊一個a元素,頁面會跳轉(zhuǎn)到該元素href屬性指定的頁,但是我們可以用return flase來阻止它的跳轉(zhuǎn)。

在js中,我們常用return false來阻止提交表單或者繼續(xù)執(zhí)行下面的代碼。 例如下面的例子:

即使a函數(shù)返回return false 阻止提交了,但是不影響 b()以及 c()函數(shù)的執(zhí)行。在Test()函數(shù)里調(diào)用a()函數(shù),那么 return false 對于Test()函數(shù)來說,只是相當(dāng)于返回值,而不能阻止Test()函數(shù)執(zhí)行。

三、常見問題

若return用在for循環(huán)中,還會執(zhí)行下一次循環(huán)嗎?

四、解決方案

代碼示例:

我們可以看到,for循環(huán)只返回return所返回的值,并不會執(zhí)行下一次循環(huán)。

五、編碼實戰(zhàn)

六、擴展思考

除了return之外,還有哪些語句可以跳出循環(huán)?

1、break

上面這個break實例,輸出的結(jié)果為:12345,當(dāng)i的值等于5的時候直接通過break跳出了循環(huán),不再繼續(xù)往下運行。

2、continue

上面這個continue實例,輸出的結(jié)果為:1234578910,當(dāng)i的值等于6的時候直接跳過,繼續(xù)執(zhí)行循環(huán)。

七、更多討論

討論點1:同樣是跳出循環(huán),return和break有什么區(qū)別?

討論點2:同樣是中斷執(zhí)行,return和return false有什么區(qū)別?

討論點3:在什么應(yīng)用場景下我們會用到break或continue?

八、參考文獻(xiàn)

參考1:JavaScript中的return語句簡單介紹

參考2:javascript中break,continue和return語句用法小結(jié)

參考2: js中return的用法


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容