javascript 函數(shù)提供兩個(gè)接口實(shí)現(xiàn)與外界的交互,其中參數(shù)作為入口,接收外界信息;返回值作為出口,把運(yùn)算結(jié)果反饋給外界。下面本篇文章帶大家了解一下javascript函數(shù)返回值,淺析下return語(yǔ)句的用法,希望對(duì)大家有所幫助!
函數(shù)是一個(gè)功能集合體,可以實(shí)現(xiàn)某些特定的功能或運(yùn)算。函數(shù)運(yùn)行之后的結(jié)果保留在函數(shù)內(nèi)部是沒有任何意義的,所以我們需要將函數(shù)的運(yùn)算結(jié)果返回到調(diào)用函數(shù)的地方。
在函數(shù)體內(nèi),使用 return 語(yǔ)句可以設(shè)置函數(shù)的返回值;return 語(yǔ)句通常在函數(shù)的末尾定義。語(yǔ)法格式:
return 返回值;
其中,“返回值”為一個(gè)可選參數(shù),可以是一個(gè)具體的值或者表達(dá)式,也可以為空。“返回值”與 return 關(guān)鍵字之間需要使用空格分隔。
立即學(xué)習(xí)“Java免費(fèi)學(xué)習(xí)筆記(深入)”;
JavaScript 是一種弱類型語(yǔ)言,所以函數(shù)對(duì)接收和輸出的值都沒有類型限制,JavaScript 也不會(huì)自動(dòng)檢測(cè)輸入和輸出值的類型。因此,返回值(表達(dá)式結(jié)果)可以是任何類型,例如數(shù)組、對(duì)象、字符串等。
對(duì)于有返回值的函數(shù),我們可以會(huì)使用一個(gè)變量來接收這個(gè)函數(shù)的返回值,示例代碼如下:
//聲明一個(gè)帶返回值的函數(shù) function getSum(num1, num2){ //函數(shù)體 return num1 + num2; } //可以通過變量來接收這個(gè)返回值 var sum1 = getSum(7, 12); // 函數(shù)返回值為:19 var sum2 = getSum(-5, 33); // 函數(shù)返回值為:28
如果函數(shù)不包含 return 語(yǔ)句,則執(zhí)行完函數(shù)體內(nèi)每條語(yǔ)句后,返回 undefined 值。
在函數(shù)中,一旦執(zhí)行完成“return”語(yǔ)句,那么整個(gè)函數(shù)就結(jié)束了,后續(xù)語(yǔ)句將不再執(zhí)行;然后運(yùn)算和返回 return 后面的表達(dá)式的值。
“return”之后的值只能有一個(gè)。如果嘗試返回多個(gè)值,那得到的結(jié)果始終是最后一個(gè)值
return 語(yǔ)句只能返回一個(gè)參數(shù),即只能返回一個(gè)值,不能一次返回多個(gè)值。如果要返回多個(gè)值的話,就需要在函數(shù)中定義一個(gè)數(shù)組,將返回值存儲(chǔ)在數(shù)組中返回。
function division(dividend, divisor){ var quotient = dividend / divisor; var arr = [dividend, divisor, quotient] return arr; } var res = division(100, 4) console.log(res[0]); // 輸出:100 console.log(res[1]); // 輸出:4 console.log(res[2]); // 輸出:25
在上面代碼中,函數(shù)返回值為數(shù)組,該數(shù)組包含 3 個(gè)元素,從而實(shí)現(xiàn)使用一個(gè) return 語(yǔ)句,返回多個(gè)值得目的。
在函數(shù)體內(nèi)可以包含多條 return 語(yǔ)句,但是僅能執(zhí)行一條 return 語(yǔ)句,因此在函數(shù)體內(nèi)可以使用分支結(jié)構(gòu)決定函數(shù)返回值,或者使用 return 語(yǔ)句提前終止函數(shù)運(yùn)行。
function f(x,y) { //如果參數(shù)為非數(shù)字類型,則終止函數(shù)執(zhí)行 if (typeof x != "number" || typeof y != "number") return; //根據(jù)條件返回值 if (x > y) return x - y; if (x < y) return y - x; if (x * y <= 0) return x + y; } console.log(f(1,6)); console.log(f(4,2)); console.log(f(0,0));
總結(jié):
return 語(yǔ)句用于向“調(diào)用函數(shù)者”返回一個(gè)值,返回值后,立即結(jié)束函數(shù)運(yùn)行,所以 return 語(yǔ)句一般都放在函數(shù)的末尾;
如果一個(gè)函數(shù)中存在多個(gè) return 語(yǔ)句,則只會(huì)執(zhí)行第 1 個(gè);
return 語(yǔ)句也可以不返回參數(shù),就相當(dāng)于結(jié)束函數(shù)運(yùn)行;
【相關(guān)推薦:javascript學(xué)習(xí)教程】
以上就是詳解JavaScript函數(shù)返回值和return語(yǔ)句的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
java怎么學(xué)習(xí)?java怎么入門?java在哪學(xué)?java怎么學(xué)才快?不用擔(dān)心,這里為大家提供了java速學(xué)教程(入門到精通),有需要的小伙伴保存下載就能學(xué)習(xí)啦!
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號(hào)
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://www.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)