2017-06-01 111 views
-3

幫助,請與小的問題:問題JS控制檯輸出

function sum(a, b) { 
 
return a + b; 
 
} 
 
sum (1, 3);

爲什麼 「功能和」 不顯示值(4) 如果我寫「的console.log 「而不是」回報「,那麼所有的工作都很好,爲什麼? 非常感謝

+0

它確實對我來說https://jsfiddle.net/j08691/vq5ob2Lj/ – j08691

+2

很明顯,用'回報'你正在返回一個值,'console.log()'在控制檯中輸出。您可以使用'console.log(sum(1,3));' – PiLHA

+0

您可能會感到困惑,因爲在瀏覽器的Developer Tools中運行該代碼將記錄返回值(至少對於Chrome),所以這看起來與'console.log',但只有當您在Developer Tools中時纔會發生這種情況。 – fqhv

回答

0

因爲return用於停止/中斷執行中的函數併發回給調用者一個結果。

console.log用於在控制檯信息中打印。

如果你想打印功能的結果,你總是可以做到這一點:

function sum(a, b) { 
return a + b; 
} 
console.log(sum (1, 3)); 
+0

和一個問題,如果我們有這樣的結構是這樣的: (函數(){ 函數之和(A,B){ 返回A + B; //(1,2)= 3 })() ; 我們該怎麼做?如果我們可以改變只是body func – LikeJavaSCript

+0

@LikeJavaSCript在IIFE中使用'return'沒有意義,除非你賦值或者將其作爲參數傳遞,否則不會使用返回值,如'console.log(function(){函數sum(a,b){return a + b; //(1,2)= 3})())'。 – Barmar