3 回答
TA贡献1798条经验 获得超7个赞
unrealFunctionToUnderstand
是一个功能。调用时记录“我一次打过电话!:D”。
tryToUnderstandThis
调用时它还会返回另一个函数()。
定义此函数后,您将(1)对其进行调用unrealFunctionToUnderstand()
,然后(2)将其返回值(tryToUnderstandThis
)分配给hardcoreLesson
。然后,您要调用hardcoreLesson
(引用到tryToUnderstandThis
)两次并记录结果。
因此,您呼叫unrealFunctionToUnderstand
一次,并且记录为“我一次呼叫!:D”,然后呼叫tryToUnderstandThis
两次,并且记录为“ 666”两次。
您能注意到我是如何在纸上“运行”此代码的吗?这就是您自己回答此类问题的方式。您在纸上用与浏览器相同的方式解释代码。查明您尚不了解或不知道的语言结构变得更加容易,因此您可以首先学习/询问这些结构。这样,如果您理解了每个部分,就可以清楚地知道执行了什么以及为什么执行。
TA贡献1796条经验 获得超10个赞
javascript中的所有内容都是一个对象,包括函数。这意味着您可以从函数中返回一个函数。
就是这样unrealFunctionToUnderstand()-它是一个返回函数的函数。
因此,您只需调用一次即可:
let hardcoreLesson = unrealFunctionToUnderstand();
因此,控制台输出仅显示一次。现在,您可以引用一个仅返回值的函数666。
let tryToUnderstandThis = () => 666;
....
return tryToUnderstandThis;
执行该操作后,您将获得响应。
添加回答
举报