JavaScript中的return布爾值的用法和原理解析
首先return作為返回關(guān)鍵字,他有以下兩種返回方式
1.返回控制與函數(shù)結(jié)果
語(yǔ)法為:return 表達(dá)式; 語(yǔ)句結(jié)束函數(shù)執(zhí)行,返回調(diào)用函數(shù),而且把表達(dá)式的值作為函數(shù)的結(jié)果
2.返回控制無(wú)函數(shù)結(jié)果
語(yǔ)法為:return;在大多數(shù)情況下,為事件處理函數(shù)返回false,可以防止默認(rèn)的事件行為.例如,默認(rèn)情況下點(diǎn)擊一個(gè)<A>元素,頁(yè)面會(huì)跳轉(zhuǎn)到該元素href屬性指定的頁(yè).
例如:<a href="http:www.baidu.com;alert(11);return false;alert(22)" rel="external nofollow" >鏈接</a> <!-- 只會(huì)執(zhí)行了alert(11);-->
return false 就相當(dāng)于終止符,return true 就相當(dāng)于執(zhí)行符。
在js中return false的作用一般是用來(lái)取消默認(rèn)動(dòng)作的。比如你單擊一個(gè)鏈接除了觸發(fā)你的"onclick"事件以外還要觸發(fā)一個(gè)默認(rèn)事件就是執(zhí)行頁(yè)面的跳轉(zhuǎn)。所以如果你想取消對(duì)象的默認(rèn)動(dòng)作就可以return false。也就是說(shuō)如果你想用JS代碼來(lái)局部改變一些數(shù)據(jù)而不引起頁(yè)面其他部位的變化,那么你就應(yīng)該在該onclick事件代碼的后面加上return false;
例如:
<input type="submit" onclick="submitAction(); return false;" />
submitAction 方法里面有提交表單的動(dòng)作。如果不加 return false,在執(zhí)行完 submitAction 之后,submit 按鈕還會(huì)繼續(xù)執(zhí)行它的默認(rèn)事件,就會(huì)再次提交表單。這可能就是很多錯(cuò)誤的根源。
的確,return false的含義不是阻止事件繼續(xù)向頂層元素傳播,而是阻止瀏覽器對(duì)事件的默認(rèn)處理。
在js中,我們常用return false來(lái)阻止提交表單或者繼續(xù)執(zhí)行下面的代碼,通俗的來(lái)說(shuō)就是阻止執(zhí)行默認(rèn)的行為。 例如下面的例子:
眾所周知,在表單中加上onsubmit="return false;"
可以阻止表單提交。
<form action="index.jsp" method="post" onsubmit="submitTest();"> <INPUT value="www"> <input type="submit" value="submit"></form> <SCRIPT LANGUAGE="JavaScript"> function submitTest() { // 一些邏輯判斷 return false; } </SCRIPT>
以上代碼實(shí)際情況是表單正常提交,若想它不提交,應(yīng)該將
<form action="index.jsp" method="post" onsubmit="submitTest();">
改為
<form action="index.jsp" method="post" onsubmit="return submitTest();">
總的來(lái)說(shuō)在js中對(duì)于return用法的三種情況的總結(jié)如下:
retrun true; 返回正確的處理結(jié)果。
return false;返回錯(cuò)誤的處理結(jié)果;終止處理;阻止提交表單;阻止執(zhí)行默認(rèn)的行為。
return;把控制權(quán)返回給頁(yè)面。
總結(jié)
以上所述是小編給大家介紹的JavaScript中的return布爾值的用法和原理解析,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Javascript實(shí)現(xiàn)通過(guò)選擇周數(shù)顯示開(kāi)始日和結(jié)束日的實(shí)現(xiàn)代碼
這篇文章主要介紹了Javascript實(shí)現(xiàn)通過(guò)選擇周數(shù)顯示開(kāi)始日和結(jié)束日的實(shí)例代碼的相關(guān)資料,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下2016-05-05JavaScript與DropDownList 區(qū)別分析
大家都知道,.NET中一些Web服務(wù)器控件解析并編譯,最終被渲染的時(shí)候,其實(shí)是轉(zhuǎn)化成了普通的html控件。2010-01-01對(duì)于防止按鈕重復(fù)點(diǎn)擊的嘗試詳解
這篇文章主要介紹了對(duì)于防止按鈕重復(fù)點(diǎn)擊的嘗試,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04JS實(shí)現(xiàn)全屏預(yù)覽F11功能的示例代碼
這篇文章主要介紹了JS實(shí)現(xiàn)全屏預(yù)覽F11功能的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-07-07javascript實(shí)現(xiàn)前端分頁(yè)功能
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)前端分頁(yè)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11