Nodejs方面的基础面试题

1.什么是Nodejs?Nodejs是一个JavaScript的运行环境,是一个服务器端的“JavaScript解释器”,用于方便高效地搭建一些响应速度快、易于扩展的网络应用。它采用事件驱动、异步编程,为网络服务而设计。2.Nodejs的优缺点优点:(1)nodejs是基于事件驱动和无阻塞的,非常适合处理并发请求,因此构建在Nodejs上的代理服务器相比其他技术实现的服务器要好一点。(2)与nodejs代理服务器交互的客户端代码由js语言编写,客户端与服务端都采用一种语言编写。缺点:(1)nodejs是一个相对新的开源项目,不太稳定,变化速度快(2)不适合CPU密集应用。如果有长时间运行的计算(比如大循环),将会导致CPU时间片不能释放,使得后续I/O无法发起。3.nodejs适用场景:高并发、聊天、实时消息推送4.npm是什么?npm是nodejs包管理和分发的工具,用于管理node包。如安装、卸载、发布、查看等。5.npm的好处?通过npm,可以安装和管理项目的依赖,且可以指明依赖项的具体版本号。6.Node.js中导入模块和导入js文件写法上有什么区别?nodejs引入模块,直接使用名字导入即可。如:

const express = require("express");

导入js文件,需要使用文件的路径,如:

const student = require("./mongoose");