javascript - 这个函数的调用是如何工作的?
问题描述
function functionOne(x){console.log(x);};
function functionTwo(var1) {
};
functionTwo(functionOne(2));
为什么 functionTwo 在那里工作?它不认为工作,是吗?因为没有手术。
解决方案
函数二(函数一(2));
这意味着“立即调用functionOne
,传入 2。然后将结果传入functionTwo
”。它的事情也是如此functionOne
,注销 2,然后返回undefined
。然后undefined
传入functionTwo
.
相反,如果您尝试使用回调,则需要传入一个函数,如下所示:
functionTwo(() => functionOne(2));
一旦你这样做了,你将不再看到 console.log,除非你添加一些代码到functionTwo
.
推荐阅读
- javascript - 自动测试 Web 应用程序的框架
- c - 如何同时调试 C 和 Matlab 代码?
- android - 如何使用 DropDownPreference 更改主题
- matlab - 为什么matlab的mldivide比dgels好那么多?
- python - Python3 日志记录
- java - 在JAVA中的控制器之间发送数据?
- ios - 为什么 Yp Cb Cr 图像缓冲区在 iOS 13 中全部洗牌?
- c# - 如何通过 C# windows 应用程序发送数据并使用 TCP/IP 协议从 android 客户端接收数据
- twitter-bootstrap - Bootstrap 轮播幻灯片跳跃
- vb.net - 在不覆盖第一个输入数据的情况下将用户输入数据添加到 word doc 时遇到问题