问题描述
console.log(doSomething);
doSomething();
function doSomething() {
console.log("Declare something");
}
在控制台中返回的
[Function: doSomething]
Declare something
但是当我写
console.log(doSomething());
function doSomething() {
console.log("Declare something");
}
控制台说
Declare something
undefined
我理解为什么它只说“声明某事”而不是“ [Function:doSomething]”,但是为什么它说“ undefined”?为什么不说“声明一些东西声明一些东西”?
解决方法
未定义是函数的返回值。 例如,为此更改功能以证明这一点。
function doSomething() {
console.log("Declare something");
return "test";
}
,
第二条日志与您的console.log(doSomething());
有关,该日志正在打印功能的return
。在这种情况下,您不会返回任何内容,因此它会显示undefined
。
那是因为您没有声明函数的return语句。