# nodejs面试题 > 不定时更新 ## 历史题目 > 最新:2029.07.09 - [如何使用nodejs对base64进行编解码?](https://github.com/haizlin/fe-interview/issues/2595) - [如何获取项目的根路径?](https://github.com/haizlin/fe-interview/issues/2594) - [如果发现node_modules中有个模块代码有bug,你该怎么办?](https://github.com/haizlin/fe-interview/issues/2439) - [你有使用过npx吗?它主要解决什么问题?](https://github.com/haizlin/fe-interview/issues/2242) - [npm提供了哪些钩子?各有什么作用?](https://github.com/haizlin/fe-interview/issues/2240) - [如何使用Consul进行服务注册与服务发现?](https://github.com/haizlin/fe-interview/issues/2146) - [使用Consul解决了哪些问题?](https://github.com/haizlin/fe-interview/issues/2145) - [Consul的四大核心特性是什么?](https://github.com/haizlin/fe-interview/issues/2144) - [你了解Consul吗?说说它的运用场景有哪些?](https://github.com/haizlin/fe-interview/issues/2143) - [使用nodejs可以获取客户端连接的真实IP吗?为什么?如何获取?](https://github.com/haizlin/fe-interview/issues/2142) - [pm2的cluster和fork两种模块有什么区别?如何选择?](https://github.com/haizlin/fe-interview/issues/2141) - [koa中如果一个中间件没有调用await next(),结果会怎样?](https://github.com/haizlin/fe-interview/issues/2140) - [koa中next()的原理是什么?](https://github.com/haizlin/fe-interview/issues/2139) - [koa2相比koa1有什么改进呢?](https://github.com/haizlin/fe-interview/issues/2138) - [请说说koa的app.use()执行流程](https://github.com/haizlin/fe-interview/issues/2133) - [在开发nodejs的时候如何做到多版本共存?](https://github.com/haizlin/fe-interview/issues/2132) - [说说你对BFF的理解](https://github.com/haizlin/fe-interview/issues/2131) - [说说npm在使用过程中有什么不足的地方](https://github.com/haizlin/fe-interview/issues/2130) - [编写nodejs代码时为什么没法实时生效?](https://github.com/haizlin/fe-interview/issues/2129) - [require和import有什么区别?](https://github.com/haizlin/fe-interview/issues/2120) - [nodejs如何热部署(热更新)?](https://github.com/haizlin/fe-interview/issues/2119) - [使用npm安装模块时,如何选择--save和--save-dev?](https://github.com/haizlin/fe-interview/issues/2118) - [devDependencies和dependencies有区别?怎么选择用哪一个呢?](https://github.com/haizlin/fe-interview/issues/2117) - [npm i和npm install有什么区别?](https://github.com/haizlin/fe-interview/issues/2116) - [yarn模块中的yarn.lock文件有什么作用?](https://github.com/haizlin/fe-interview/issues/2115) - [你了解什么是集群吗?](https://github.com/haizlin/fe-interview/issues/2102) - [你知道什么是ORM吗?](https://github.com/haizlin/fe-interview/issues/2101) - [你有用过Node的哪些模板引擎呢?说下它们的区别](https://github.com/haizlin/fe-interview/issues/2100) - [你有写过定时任务吗?是用第三方模块吗?](https://github.com/haizlin/fe-interview/issues/2099) - [Mongodb如何批量更新文档?](https://github.com/haizlin/fe-interview/issues/2098) - [你对Mongodb有了解吗?](https://github.com/haizlin/fe-interview/issues/2097) - [如何构建一个简单的生产者与消费者模型?](https://github.com/haizlin/fe-interview/issues/2055) - [如何安装、启动一个 RabbitMQ 服务?](https://github.com/haizlin/fe-interview/issues/2054) - [MQ 的空间与时间解耦是什么?](https://github.com/haizlin/fe-interview/issues/2053) - [RabbitMQ的应用场景有哪些?](https://github.com/haizlin/fe-interview/issues/2052) - [为什么要使用RabbitMQ?](https://github.com/haizlin/fe-interview/issues/2051) - [yarn和npm有什么区别?](https://github.com/haizlin/fe-interview/issues/2031) - [你会搭建私有的npm仓库吗?怎么搭建?](https://github.com/haizlin/fe-interview/issues/2030) - [你有发布过自己的npm包吗?流程是怎样的?](https://github.com/haizlin/fe-interview/issues/2029) - [.npmrc配置文件有什么用途?](https://github.com/haizlin/fe-interview/issues/2028) - [发布一个npm包如何忽略不需要发布的文件?](https://github.com/haizlin/fe-interview/issues/2027) - [nodejs中require方法是同步还是异步操作?为什么?](https://github.com/haizlin/fe-interview/issues/2002) - [你在Nodejs项目中使用过哪些数据库?](https://github.com/haizlin/fe-interview/issues/2001) - [常用的主流消息中间件都有哪些?](https://github.com/haizlin/fe-interview/issues/2000) - [你知道egg.js和thinkjs吗?说说它们的区别是什么?](https://github.com/haizlin/fe-interview/issues/1999) - [在Node项目中你有使用过哪些常用的中间件?](https://github.com/haizlin/fe-interview/issues/1998) - [你用过哪些Node的web框架?](https://github.com/haizlin/fe-interview/issues/1993) - [Node项目中,你是怎么记录日志的?](https://github.com/haizlin/fe-interview/issues/1992) - [I/O多路复用轮询技术select和epoll的区别是什么?](https://github.com/haizlin/fe-interview/issues/1991) - [说说你对EventLoop的理解](https://github.com/haizlin/fe-interview/issues/1990) - [说说你对线程模型的理解](https://github.com/haizlin/fe-interview/issues/1989) - [你有用过哪些断言库?](https://github.com/haizlin/fe-interview/issues/1940) - [nodejs如何高精度计时(纳秒)?](https://github.com/haizlin/fe-interview/issues/1939) - [如何高效地写入大文件(3G以上)?](https://github.com/haizlin/fe-interview/issues/1938) - [如何高效地读取大文件(3G以上)?](https://github.com/haizlin/fe-interview/issues/1937) - [写一个读取文件和文件的方法](https://github.com/haizlin/fe-interview/issues/1936) - [module.exports与exports的区别是什么?](https://github.com/haizlin/fe-interview/issues/1636) - [假设有a.js、b.js 两个模块相互引用,会有什么问题?是否为陷入死循环?](https://github.com/haizlin/fe-interview/issues/1635) - [Node的模块缓存在哪?](https://github.com/haizlin/fe-interview/issues/1634) - [Node的模块加载机制是什么?](https://github.com/haizlin/fe-interview/issues/1633) - [说说你对Node模块的理解](https://github.com/haizlin/fe-interview/issues/1632) - [你是如何选择Node.js的版本的?](https://github.com/haizlin/fe-interview/issues/1427) - [说说koa洋葱模型有什么优点?它是如何实现洋葱模型的?](https://github.com/haizlin/fe-interview/issues/1426) - [你自己有写过koa的中间件吗?](https://github.com/haizlin/fe-interview/issues/1425) - [你知道koa的中间件原理吗?](https://github.com/haizlin/fe-interview/issues/1424) - [koa是如何解决跨域的?](https://github.com/haizlin/fe-interview/issues/1423) - [你有使用过express和koa吗?它俩有什么区别?](https://github.com/haizlin/fe-interview/issues/1422) - [你有使用过NodeJs吗?说说你对它的理解,它的运用场景有哪些呢?](https://github.com/haizlin/fe-interview/issues/1421) - [你用NodeJs做过什么项目?](https://github.com/haizlin/fe-interview/issues/1402) - [你了解NodeJs的子进程吗?](https://github.com/haizlin/fe-interview/issues/1401) - [说说你对package.json的理解,它都有哪些作用?](https://github.com/haizlin/fe-interview/issues/1400) - [npm是干什么用的?它有什么优缺点?有没有类似的方案?](https://github.com/haizlin/fe-interview/issues/1399) - [你知道什么是REPL吗?](https://github.com/haizlin/fe-interview/issues/1398) - [请解释下你对EventEmitter的理解](https://github.com/haizlin/fe-interview/issues/1397) - [怎样在NodeJs中加载HTML文件?](https://github.com/haizlin/fe-interview/issues/1396) - [Node的全局对象有哪些?](https://github.com/haizlin/fe-interview/issues/1395) - [Node的全局变量有哪些?](https://github.com/haizlin/fe-interview/issues/1394) - [NodeJs的回调有什么用吗?](https://github.com/haizlin/fe-interview/issues/1393) - [NodeJs是基于单线程的吗?为什么?](https://github.com/haizlin/fe-interview/issues/1392) - [NodeJs和V8引擎是什么关系?](https://github.com/haizlin/fe-interview/issues/1391) - [你知道NodeJs是如何工作的吗?](https://github.com/haizlin/fe-interview/issues/1390) - [你是怎么调试NodeJs呢?有哪些方法?](https://github.com/haizlin/fe-interview/issues/1389) - [NodeJs适用于哪些场景开发?](https://github.com/haizlin/fe-interview/issues/1388) - [NodeJs的特性主要有哪些?](https://github.com/haizlin/fe-interview/issues/1387)