javascript基礎教學之函數傳回值return語法實例詳解
Jul 25, 2017 am 10:10 AM
javascript
js
返回
函數傳回值
函數中的return語句用來傳回函數呼叫後的回傳值
return expression;
登入後複製
return語句只能出現在函數體內,如果不是會報語法錯誤
return 1;//SyntaxError: Illegal return statement
登入後複製
如果沒有return語句,則函數呼叫僅依序執行函數體內的每一語句直到函數結束,最後返回呼叫程式。在這種情況下,呼叫表達式的結果是undefined
var test = function fn(){} console.log(test);//undefined
登入後複製
當執行到return語句時,函數終止執行,並傳回expression的值給呼叫程式
var test = function fn(){ return 2; }; console.log(test());//2
登入後複製
[注意]並不是函數中return語句後的所有語句都不執行,finally語句是例外,return語句不會阻止finally子句的執行
function testFinnally(){ try{ return 2; }catch(error){ return 1; }finally{ return 0; } } testFinnally();//0
登入後複製
[注意]由於javascript可以自動插入分號,因此在return關鍵字和它後面的表達式之間不能有換行
var test = function fn(){ return 2; }; console.log(test());//undefined
登入後複製
一個函數中可以有多個return語句
function diff(iNum1, iNum2) { if (iNum1 > iNum2) { return iNum1 - iNum2; } else { return iNum2 - iNum1; } }
登入後複製
return語句可以單獨使用而不必帶有expression,這樣的話也會向呼叫程式傳回undefined
var test = function fn(){ return; }; console.log(test());//undefined
登入後複製
return語句經常作為函數內的最後一條語句出現,這是因為return語句可用於使函數提前傳回。當return被執行時,函數立即返回而不再執行餘下的語句
//并没有弹出1 var test = function fn(){ return; alert(1); }; console.log(test());//undefined
登入後複製
如果函數調用時在前面加上了new前綴,且返回值不是一個對象,則返回this(該新對象)
function fn(){ this.a = 2; return 1; } var test = new fn(); console.log(test);//{a:2} console.log(test.constructor);//fn(){this.a = 2;return 1;}
登入後複製
如果傳回值是一個對象,則傳回該對象
function fn(){ this.a = 2; return {a:1}; } var test = new fn(); console.log(test);//{a:1} console.log(test.constructor);//Object() { [native code] }
登入後複製
以上是javascript基礎教學之函數傳回值return語法實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前
By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前
By DDD

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前
By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前
By DDD

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)