Javascript中的return作用及javascript return關(guān)鍵字用法詳解
javascript 中的return一直用的都比較火,關(guān)于javascript中的return作用大家了解嗎,下面通過本文給大家詳細介紹,具體內(nèi)容如下所示:
return 語句從當(dāng)前函數(shù)退出,并從那個函數(shù)返回一個值。
語法:
return[()[expression][]];
可選項 expression 參數(shù)是要從函數(shù)返回的值。如果省略,則該函數(shù)不返回值。
用 return 語句來終止一個函數(shù)的執(zhí)行,并返回 expression 的值。如果 expression 被省略,或在函數(shù)內(nèi)沒有 return 語句被執(zhí)行,則把值 undefined 賦給調(diào)用當(dāng)前函數(shù)的表達式。
下面示例說明了 return 語句的用法:
function myfunction(arg, arg){ var r; r = arg * arg; return(r); }
return 表示從被調(diào)函數(shù)返回到主調(diào)函數(shù)繼續(xù)執(zhí)行,返回時可附帶一個返回值,由return后面的參數(shù)指定。return通常是必要的,因為函數(shù)調(diào)用的時候計算結(jié)果通常是通過返回值帶出的。
如果實在不需要函數(shù)返回什么值,就需要用void聲明其類型。
補充:如果你函數(shù)名前有返回類型定義,如int,double等就必須有返回值,而如果是void型,則可以不寫return,但這時即使寫了也無法返回數(shù)值的:
下面是個非void型的函數(shù):
int f() { int i=; return ; //return(i); //這樣也可以 }
void型的函數(shù):
void f()
{
int i=;
//return;//這樣也可以,不要這一句也可以
}
ps:javascript中return的作用
這里面的return含有一些細節(jié)知識:
例如:onClick='return add_onclick()'與 onClick='add_onclick()'的區(qū)別
JAVASCRIPT在事件中調(diào)用函數(shù)時用return返回值實際上是對window.event.returnvalue進行設(shè)置。
而該值決定了當(dāng)前操作是否繼續(xù)。
當(dāng)返回的是true時,將繼續(xù)操作。
當(dāng)返回是false時,將中斷操作。
而直接執(zhí)行時(不用return)。將不會對window.event.returnvalue進行設(shè)置
所以會默認地繼續(xù)執(zhí)行操作
詳細說明如下:
例如:
當(dāng)在 <a href="abc.htm" onclick="return add_onclick()">Open</a> 中
如果函數(shù) add_onclick() 返回 true, 那么 頁面就會打開 abc.htm
否則, (返回 false), 那么頁面不會跳轉(zhuǎn)到 abc.htm, 只會執(zhí)行你的 add_onclick() 函數(shù)里的內(nèi)容. (add_onclick函數(shù)中控制頁面轉(zhuǎn)到
abc.htm除外)
而 <a href="abc.htm" onclick="add_onclick()">Open</a>
不管 add_onclick() 返回什么值, 都會在執(zhí)行完 add_onclick 后打開頁面 abc.htm
另外補充:
onclick事件時就相當(dāng)于onclick="return true/false"
例:
function check() { if(obj.value=="" ) { window.alert("不能為空!"); obj.focus(); return false; } return true; }
調(diào)用方法返回true時才提交表單,反之則不提交,這是submit按鈕
------------------------------------------------------------------------------------------
調(diào)用js函數(shù)不需要return,但是表單卻無法提交,所以在js函數(shù)中加上一句話
例:
<script language="javascript"> function check() { if(obj.value=="" ) { window.alert("不能為空!"); obj.focus(); return false; } document.myform.submit(); return true; } </script>
注:document.myform.submit();要在return true前
- JavaScript跳出循環(huán)的三種方法(break, return, continue)
- 淺析JavaScript中break、continue和return的區(qū)別
- javascript中break,continue和return語句用法小結(jié)
- javaScript如何跳出多重循環(huán)break、continue
- JavaScript Break 和 Continue區(qū)別教程
- javascript中關(guān)于break,continue的特殊用法與介紹
- Javascript基礎(chǔ)教程之break和continue語句
- js中return false(阻止)的用法
- javascript中return,return true,return false三者的用法及區(qū)別
- JS中實現(xiàn)函數(shù)return多個返回值的實例
- 一道優(yōu)雅面試題分析js中fn()和return fn()的區(qū)別
- JavaScript中break、continue和return的用法區(qū)別實例分析
相關(guān)文章
ajax如何實現(xiàn)頁面局部跳轉(zhuǎn)與結(jié)果返回
AJAX即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù),通過在后臺與服務(wù)器進行少量數(shù)據(jù)交換,AJAX 可以使網(wǎng)頁實現(xiàn)異步更新,本篇文章給大家介紹ajax如何實現(xiàn)頁面局部跳轉(zhuǎn)與結(jié)果返回,感興趣的朋友一起來學(xué)習(xí)2015-08-08深入JavaScript高級程序設(shè)計之對象、數(shù)組(棧方法,隊列方法,重排序方法,迭代方法)
這篇文章主要介紹了深入JavaScript高級程序設(shè)計之對象、數(shù)組(棧方法,隊列方法,重排序方法,迭代方法)的相關(guān)資料,需要的朋友可以參考下2015-12-12JavaScript中json對象和string對象之間相互轉(zhuǎn)化
json對象和string對象之間的轉(zhuǎn)化已經(jīng)成為了大家耳熟能詳?shù)脑掝},本人今天就多啰嗦一些他們之間的故事,如有不對之處,還請各位海涵呢?不多說了直切主題2012-12-12JS如何實現(xiàn)在頁面上快速定位(錨點跳轉(zhuǎn)問題)
本篇文章主要介紹了JS如何實現(xiàn)在頁面上快速定位(錨點跳轉(zhuǎn)問題),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08基于JavaScript實現(xiàn)年月日三級聯(lián)動
這篇文章主要為大家詳細介紹了基于JavaScript實現(xiàn)年月日三級聯(lián)動,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-06-06