js中return的作用及用法

來源:互聯網
上載者:User

標籤:doc   函數   function   文章   word   s函數   詳細說明   js函數   htm   

這裡面的return含有一些細節知識:

例如:onClick=‘return add_onclick()‘與 onClick=‘add_onclick()‘的區別

JAVASCRIPT在事件中調用函數時用return傳回值實際上是對window.event.returnvalue進行設定。

而該值決定了當前操作是否繼續。
當返回的是true時,將繼續操作。
當返回是false時,將中斷操作。

而直接執行時(不用return)。將不會對window.event.returnvalue進行設定
所以會預設地繼續執行操作

詳細說明如下:
例如:
當在 <a href="abc.htm" onclick="return add_onclick()">Open</a> 中
如果函數 add_onclick() 返回 true, 那麼 頁面就會開啟 abc.htm
否則, (返回 false), 那麼頁面不會跳轉到 abc.htm, 只會執行你的 add_onclick() 函數裡的內容. (add_onclick函數中控制頁面轉到 abc.htm除外

)
而 <a href="abc.htm" onclick="add_onclick()">Open</a>
不管 add_onclick() 返回什麼值, 都會在執行完 add_onclick 後開啟頁面 abc.htm

另外補充:
onclick事件時就相當於onclick="return true/false"
例:
function check()
{
if(obj.value=="" )
   {
     window.alert("不可為空!");
     obj.focus();
     return false;
   }
     return true;
}

調用方法返回true時才提交表單,反之則不提交,這是submit按鈕
------------------------------------------------------------------------------------------

調用js函數不需要return,但是表單卻無法提交,所以在js函數中加上一句話
例:
<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中的 return false和return true
return 是javascript裡函數傳回值的關鍵字,
一個函數內處理的結果可以使用return 返回,
這樣在調用函數的地方就可以用變數接收返回
結果。return 關鍵字內任何類型的變數資料或運算式
都可以進行返回,甚至什麼都不返回也可以比如
function NullReturn(IsNull)
{
if(IsNull==true)
{
return;
}
}
這樣寫也是可以的,這裡的意思是返回空(null)
所以有的時候return 的作用就是用來終止函數執行。
比如
<html>
<head>
<title>return驗證測試</title>
<script language="javascript">
function Login_Click()
{
if(document.form1.UsName.value=="")
{
alert(‘使用者名稱為空白‘);
}
if(document.form1.UsPwd.value=="")
{
alert(‘密碼為空白‘);
}
alert(‘登陸成功‘);
}
</script>
</head>
<body>
<form name="form1">
<input type="text" name="UsName" >使用者名稱
<input type="password" name="UsPwd">密碼
<input type="button" name="Login" onClick="Login_Click();" >登陸
</form>
</body>
</html>
不加return 的情況
加return
<html>
<head>
<title>return驗證測試</title>
<script language="javascript">
function Login_Click()
{
if(document.form1.UsName.value=="")
{
alert(‘使用者名稱為空白‘);
return;
}
if(document.form1.UsPwd.value=="")
{
alert(‘密碼為空白‘);
return;
}
alert(‘登陸成功‘);
}
</script>
</head>
<body>
<form name="form1">
<input type="text" name="UsName" >使用者名稱
<input type="password" name="UsPwd">密碼
<input type="button" name="Login" onClick="Login_Click();" >登陸
</form>
</body>
</html>

運行就會發現加return 和不加return 的區別,
最簡單的測試辦法,上面的兩個例子什麼都不輸入直接登陸,樓就明白了。

不加return的現象是先提示使用者名稱沒輸入,然後提示密碼沒輸入;加了return之後遇到一個沒輸入之後就不再繼續檢測

return false表示返回一個false值,也就是說提交是不成功的,就是不會提交上去。
return true表法返回一個true值,也就是提交了,不管你輸入沒有輸入值,都會提交到action指定頁面。

之前對return的理解很模糊,看完這篇文章對return的作用以及使用方法都有了深度理解,分享給大家!

文章來自:博主:骨頭森林

js中return的作用及用法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.