Javascript 如何在节点中查看不带回调的异步性
我有一个与数据库集成的函数,但在此之前,我有一个进行一些检查的函数:Javascript 如何在节点中查看不带回调的异步性,javascript,node.js,Javascript,Node.js,我有一个与数据库集成的函数,但在此之前,我有一个进行一些检查的函数: function checkVars (a, b){ if (a.a1 !== b.b1){ b.b1 = a.a1; } // and other 4 vars } 在此之后,我有一个函数将数据插入到我的数据库中 如何确保代码在执行数据库函数之前先执行比较函数 我正在使用回调,但不使用回调是否可能 我如何确保我的代码将在之前执行比较函数 假设你有: checkVars(somethi
function checkVars (a, b){
if (a.a1 !== b.b1){
b.b1 = a.a1;
}
// and other 4 vars
}
在此之后,我有一个函数将数据插入到我的数据库中
如何确保代码在执行数据库函数之前先执行比较函数
我正在使用回调,但不使用回调是否可能
我如何确保我的代码将在之前执行比较函数
假设你有:
checkVars(something, somethingElse);
doDatabaseWork();
…您知道将调用checkVars
,并将在调用doDatabaseWork
之前运行到完成。由于checkVars
同步执行其所有工作(它不会启动任何异步进程),因此它在调用doDatabaseWork
之前运行到完成这一事实意味着它的所有工作都在doDatabaseWork
之前完成。只有当checkVars
启动一个异步进程时,您才需要允许该进程在checkVars
返回时尚未完成(并通过回调、直接回调或承诺处理)。但是您所描述的并不是在checkVars
中启动异步进程,因此没有什么需要考虑的
我如何确保我的代码将在之前执行比较函数
假设你有:
checkVars(something, somethingElse);
doDatabaseWork();
…您知道
将调用checkVars
,并将在调用doDatabaseWork
之前运行到完成。由于checkVars
同步执行其所有工作(它不会启动任何异步进程),因此它在调用doDatabaseWork
之前运行到完成这一事实意味着它的所有工作都在doDatabaseWork
之前完成。只有当checkVars
启动一个异步进程时,您才需要允许该进程在checkVars
返回时尚未完成(并通过回调、直接回调或承诺处理)。但是您所描述的并没有在checkVars
中启动异步进程,因此没有什么需要考虑的。只需先调用您的checkVars()
。它不做任何异步的事情,所以应该没有问题。为什么不试试呢?另外,要删除哪个回调?我在您的示例中没有看到,只需先调用您的checkVars()
。它不做任何异步的事情,所以应该没有问题。为什么不试试呢?另外,要删除哪个回调?我在你的例子中看不到一个。