首頁 > web前端 > 前端問答 > JavaScript函數有回傳值嗎

JavaScript函數有回傳值嗎

青灯夜游
發布: 2022-10-10 16:20:38
原創
3203 人瀏覽過

JavaScript函數有回傳值。如果函數中包含return語句,一旦執行到return語句,將停止函數的運行,並運算和返回return後面的表達式的值;如果函數不包含return語句,則執行完函數體內每條語句後,返回undefined值。

JavaScript函數有回傳值嗎

本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

JavaScript函數有回傳值。

JavaScript 函數提供兩個介面實現與外界的交互,其中參數作為入口,接收外界資訊;返回值作為出口,把運算結果回饋給外界。

在函數體內,使用 return 語句可以設定函數的回傳值。一旦執行 return 語句,將停止函數的運行,並運算和傳回 return 後面的表達式的值。如果函數不包含 return 語句,則執行完函數體內每個語句後,傳回 undefined 值。

JavaScript 是一種弱型別語言,所以函數對接收和輸出的值都沒有型別限制,JavaScript 也不會自動偵測輸入和輸出值的型別。

範例1

下面程式碼定義函數的回傳值為函數。

function getSum(num1, num2){
    return num1 + num2;
}
var sum1 = getSum(7, 12);      // 函数返回值为:19
var sum2 = getSum(-5, 33);     // 函数返回值为:28
登入後複製

提示:return 語句通常在函數的末尾定義,當函數運行到 return 語句時會立即停止運行,並返回到呼叫函數的地方繼續執行。

範例2

函數的參數沒有限制,但是回傳值只能是一個;如果要輸出多個值,可以透過陣列或物件進行設計。

function division(dividend, divisor){
    var quotient = dividend / divisor;
    var arr = [dividend, divisor, quotient]
    return arr;
}
var res = division(100, 4)
document.write(res[0]);         // 输出:100
document.write(res[1]);         // 输出:4
document.write(res[2]);         // 输出:25
登入後複製

在上面程式碼中,函數傳回值為數組,該數組包含 3 個元素,從而實現使用一個 return 語句,傳回多個值得目的。

範例3

在函數體內可以包含多條return 語句,但只能執行一條return 語句,因此在函數體內可以使用分支結構決定函數傳回值,或使用return 語句提前終止函數運行。

function f(x,y) {
    //如果参数为非数字类型,则终止函数执行
    if (typeof x != "number" || typeof y != "number") return;
    //根据条件返回值
    if (x > y) return x - y;
    if (x < y) return y - x;
    if (x * y <= 0) return x + y;
}
登入後複製

【相關推薦:javascript學習教學

#

以上是JavaScript函數有回傳值嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板