繁体   English   中英

console.log(myFunction()) 返回未定义

[英]console.log(myFunction()) returns undefined

我是 JavaScript 的新手,我尝试使用它来了解所有的进出。 我写的

function greet() {
    console.log("Hi");
};

console.log(greet());

它在控制台中的结果是

> Hi app.js:2 
> undefined app.js:4

我认为这是因为console.log中的greet()首先调用了 function,它会打印出"Hi" 我们得到第一行日志。 但是第二行是从哪里来的呢?

然后我想因为Higreet()的整体结果,然后console.log基本上调用变量Hi ,但在这种情况下结果将is not defined ,不是undefined

在 JavaScript 中,如果使用关键字return的函数没有返回任何内容,则默认返回undefined

var data = greet();
console.log(data);// undefined, since your function does not return.

相当于:

console.log(greet());

第二个输出是函数的返回结果。 由于您没有从函数返回任何内容,因此打印undefined

要在第二个控制台中打印“Hi”,您必须从函数中返回它。

 function greet() { console.log("Hi"); return 'Hi'; }; console.log(greet());

您应该使用这样的return关键字:

function greet() {
   console.log("HI");
   return "HI";
};
console.log(greet());

或者您可以将其存储在变量中并返回变量

function greet() {
   const hello = ("HI");
   return hello;
};
cosnole.log(greet());

,因为如果你不使用return 关键字并将函数记录到控制台然后它返回undefined

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM