小编Man*_*Man的帖子

异步等待内部如何工作?

我的问题是如何在 node.js 或 v8 环境中执行等待函数结果。

我们知道,node.js 是单线程非阻塞 I/O 环境。

什么是内部代码及其工作原理?

异步函数示例:

async function asyncCall() {      
 // `getCreditorId` and `getCreditorAmount` return promise
  var creditorId= await getCreditorId(); 
  var creditAmount=await getCreditorAmount(creditorId);

}
Run Code Online (Sandbox Code Playgroud)

如果执行此函数,则首先等待 CreditorId,然后使用 CreditorId 调用 getCreditorAmount,并再次仅在此异步函数中等待 Creditor Amount。

而不是异步函数,其他执行不等待,效果很好。

  1. 第二个问题

如果在这个例子中使用 Promise

getCreditorId().then((creditorId)=>{
   getCreditorAmount(creditorId).then((result)=>{
      // here you got the result
  })
});
Run Code Online (Sandbox Code Playgroud)

我的假设是,如果 async wait 在内部使用 Promise,那么 async 必须知道 getCreditorAmount 函数中使用哪个变量作为参数。

它怎么知道的?

也许我的问题毫无价值?如果它有答案那么我想知道答案。

感谢帮助。

javascript asynchronous v8 node.js

3
推荐指数
1
解决办法
4103
查看次数

fs.unlink()可以删除空或非空文件夹

我是Node.js的新手.

const fs = require('fs');

fs.unlink('/tmp/hello', (err) => {
  if (err) throw err;
  console.log('successfully deleted /tmp/hello');
});
Run Code Online (Sandbox Code Playgroud)

这是我从node.js文档文件系统介绍示例中复制的一些代码.

但是,我很困惑.可以unlink()删除文件夹吗?

我试过但它不起作用.

那么,可以unlink()删除文件夹吗?

javascript fs node.js

2
推荐指数
1
解决办法
8285
查看次数

标签 统计

javascript ×2

node.js ×2

asynchronous ×1

fs ×1

v8 ×1