以下是我正在尝试的代码示例:
var hello = function hi(){
function bye(){
console.log(hi);
return hi;
}
bye();
};
hello();
以下是repl.it链接
我正在尝试从函数hi
返回函数bye
。正如您所看到的,当console.log(hi)
值出现时,我的返回语句不会返回hi函数。为什么return
语句没有返回hi
的引用?
答案 0 :(得分:3)
你忘了return
再见。
return bye();
答案 1 :(得分:1)
不要通过在另一个内部定义一个函数来使思考复杂化
首先定义您的hi
函数,例如
function hi (message)
{
console.log(message)
}
它需要一个参数并在控制台上显示它
现在让我们定义我们的bye
函数
function bye ()
{
hi(" Called from the function bye ");
}
否,当您致电bye
时,您同时致电hi
bye(); // it will show on the console the message " Called from ... "
如果你想从函数中返回一个函数,你很容易定义你的hi
函数
function hi (message)
{
console.log(message)
}
,bye
函数返回hi
函数,如下所示
function bye()
{
return hi;
}
现在你需要做的就是调用bye
函数并让参数在控制台中显示返回的内容,就像这样
bye()(" This is a sample message ");