[英]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"
。 我們得到第一行日志。 但是第二行是從哪里來的呢?
然后我想因為Hi
是greet()
的整體結果,然后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.