1. 同步和异步有何区别?

答案:
同步:在主程序中执行,会阻止后续代码的执行,通过返回值获取结果
异步:在一个独立的线程执行,不会阻止主程序后续代码的执行,通过回调函数获取结果。

2. NodeJS中有哪些类型模块,文件操作用哪一个模块?

答案:
模块类型: 核心模块、自定义模块、自定义模块。
文件操作:fs模块

3. 对NodeJS的优点和缺点提出自己的看法?

答案:
为Node是基于事件驱动和无阻塞的,所以非常适合处理并发请求,因此构建在NodeJS的优点和缺点Node上的代理服务器相比其他技术实现的服务器表现要好得多。此外,与Node服务器交互的客户端代码是由javascript语言编写的,因此客户端和服务器端都用同一种语言编写。

4.对NodeJS的优点和缺点提出自己的看法?
答案:CPU密集型任务的特点是进行大量的计算,消耗CPU资源,比如计算圆周率(上千位)、对视频进行编码等, 全靠CPU的运算能力 (一般用C语言,java)
IO(Input / Output)密集型任务,这类任务的特点是CPU消耗很少,大部分时间都在等待IO操作。常见的大部分任务都是IO密集型任务,比如Web应用(一般用脚本语言:python/Nodejs)。
Nodejs设计思想中以事件驱动、异步、非堵塞I/O密集型为核心,他提供的大多数api都是基于事件的、异步的风格。所以非常适合处理高并发请求。此外,与Node服务器交互的客户端代码是由js语言编写的,因此客户端和服务器端都用同一种语言编写,减少了成本。