Nodejs知识点

1、什么是NodeJS

1)Node.js是一个基本Chrome V8引擎的JavaScript运行环境

2)Node.js使用了一个事件驱动、非阻塞式I/o的模型,使其轻量又高效

3)Node.js的包管理器npm(node package mange)是全球最大的开源库生态系统

2、全局变量

__dirname:当前文件的路径

__filename:当前文件的绝对路径

console:控制台对象,可以输出信息

process:当前执行进程的对象,可以获取进程的相关信息,环境变量等

setTimeout/clearTimeout:延时执行, 时间到了执行, 只执行一次

setInterval/clearInterval:定时器,, 没隔一段时间执行一次

3、fs模块

fs.stat/fs.statSync:访问文件的元数据,比如文件大小,文件的修改时间

fs.readFile/fs.readFileSync:异步/同步读取文件

fs.writeFile/fs.writeFileSync:异步/同步写入文件

fs.readdir/fs.readdirSync:读取文件夹内容

fs.unlink/fs.unlinkSync:删除文件

fs.rmdir/fs.rmdirSync:只能删除空文件夹

4、说一下事件循环eventloop 

1)所有同步任务都在主线程上执行,形成一个执行栈

2)当主线程中的执行栈为空时,检查事件队列是否为空,如果为空,则继续检查;如不为空,则执行3

3)取出任务队列的首部,加入执行栈

4)执行任务

5)检查执行栈,如果执行栈为空,则跳回第 2 步;如不为空,则继续检查


 

 5、简述同步和异步的区别,如何避免回调地狱

        同步方法调用一旦开始,调用者必须等到方法调用返回后,才能继续后续行为

  异步方法调用一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作。而异步方法通常会在另外一个线程中,整个过程,不会阻碍调用者的工作

  避免回调地狱:

  1)Promise

  2)async/await

  3)generator

  4)事件发布/监听模式


 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值