nodejs面试题


1. nodejs是什么?

  1. Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时
  2. nodejs出现之前,js只能在游览器运行
  3. nodejs出现之后,js可以在任何安装nodejs的环境运行

2. nodejs和前端js的区别?

在这里插入图片描述

  1. 语法不同
    nodejs和js有共同的es语法,但是API不一样
  2. 应用不同
    2.1 前端js用于网页,在游览器运行
    2.2 nodejs可用于服务端,如开发web server
    2.3 nodejs 也可以用于本机,如webpack等本机工具

3. nodejs如何进行调试?

在这里插入图片描述

  1. 启动nodejs 服务时,使用inspect
  2. 代码中使用debugger断点
  3. 使用Chrome调试,在游览器输入: chrome://inspect

4. 当前文件和目录的路径如何获取?

  1. __filename 获取当前文件
  2. __dirname 获取当前路径

5. commonjs和es6 module的区别?

  1. 语法不同
  2. commonjs是动态引入,执行时引入
  3. ES6 module 是静态引入,编译时引入,一般放在顶部
    在这里插入图片描述

6. path.resolve和path.join的区别?

  1. 两者都是拼接文件路径
  2. path.resolve 获取绝对路径
  3. path.join 获取在相对路径
    在这里插入图片描述

7. 事件循环(event loop)在nodejs和游览器中的区别?

  1. 游览器事件循环引用阮一峰老师的博客:JavaScript 运行机制详解:再谈Event Loop
  2. nodejs 参考其他博主的博客,如: NodeJs 的 Event loop 事件循环机制详解

8. session如何实现登录?

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9. 请描述koa2和express的中间件机制

参考博客: Koa2 和 Express 中间件对比

10. async和await执行顺序的考察

参考博客:async 函数的含义和用法

11. 描述koa2洋葱圈模型

参考博客:Koa2 中间件简易洋葱圈模型实现

12. 如何逐行读取一个1G大小的日志文件?

在这里插入图片描述
在这里插入图片描述

13. nodejs线上环境为何要开启多进程?

  1. 高效使用多核CPU
  2. 充分利用服务器内存
  3. 最终: “压榨”服务器,不浪费资源
  4. 可以使用 PM2 进行管理
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值