首頁  >  文章  >  web前端  >  Javascript中的return作用及javascript return關鍵字用法詳解_javascript技巧

Javascript中的return作用及javascript return關鍵字用法詳解_javascript技巧

WBOY
WBOY原創
2016-05-16 15:33:331233瀏覽

javascript 中的return一直用的都比較火,關於javascript中的return作用大家了解嗎,以下透過本文給大家詳細介紹,具體內容如下圖:

return 語句從目前函數退出,並從該函數傳回一個值。

文法:

return[()[expression][]];

可選項 expression 參數是要從函數傳回的值。如果省略,則函數不傳回值。

用 return 語句來終止一個函數的執行,並傳回 expression 的值。如果 expression 被省略,或在函數內沒有 return 語句被執行,則把值 undefined 賦給呼叫目前函數的表達式。

下面範例說明了 return 語句的用法:

function myfunction(arg, arg){ 
  var r; 
  r = arg * arg; 
  return(r);
}

return 表示從被調函數回到主調函數繼續執行,回傳時可附帶一個回傳值,由return後面的參數指定。 return通常是必要的,因為函數呼叫的時候計算結果通常是透過回傳值帶出的。

如果實在不需要函數傳回什麼值,就需要用void宣告其型別。

補充:如果你函數名稱前有回傳型別定義,如int,double等就必須有回傳值,而如果是void型,可以不寫return,但這時即使寫了也無法傳回數值的:

下面是個非void型的函數:

int f()
{
  int i=;
  return ;
  //return(i);  //这样也可以
}

void型的函數:

void f()
{
    int i=;
    //return;//這樣也可以,不要這一句話也可以
}

ps:javascript中return的作用

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

例如:onClick='return add_onclick()'與 onClick='add_onclick()'的差異

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

而該值決定了當前操作是否繼續。

當回傳的是true時,將繼續操作。

當回傳是false時,將中斷操作。

而直接執行時(不用return)。將不會對window.event.returnvalue進行設定

所以會預設繼續執行操作

詳細說明如下:

例如:

當在 Open

如果函數 add_onclick() 回傳 true, 那麼 頁面就會開啟 abc.htm

否則, (返回 false), 那麼頁面不會跳到 abc.htm, 只會執行你的 add_onclick() 函數裡的內容. (add_onclick函數中控制頁面轉到

abc.htm除外)

Open

不管 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前

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn