问题JS控制台输出

问题描述:

帮助,请与小的问题:问题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

因为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