node.js是什么

JavaScript018

node.js是什么,第1张

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型。

Node 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言。发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装。

Node对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好。V8引擎执行Javascript的速度非常快,性能非常好。Node是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。

扩展资料:

Node采用一系列“非阻塞”库来支持事件循环的方式。本质上就是为文件系统、数据库之类的资源提供接口。向文件系统发送一个请求时,无需等待硬盘(寻址并检索文件),硬盘准备好的时候非阻塞接口会通知Node。

该模型以可扩展的方式简化了对慢资源的访问, 直观,易懂。尤其是对于熟悉onmouseover、onclick等DOM事件的用户,更有一种似曾相识的感觉。

1使用JavaScript运行于服务端的平台上,自然继承了JavaScript语言的一些特性;

2Node.js基于单线程、基于非阻塞I/O模型实现;

3适合于数据密集型应用,不适用于计算密集型类的应用(如算法等);

4通过使用回调函数,来避免同步地等待I/O操作完成;

5Node.js非核心模块非常多,质量可能参差不齐(使用别人贡献的模块,要有承担风险的准备);

6因为简单,开发Node.js应用程序效率很高;

7调试相对困难,调试工具可能没有其他一些比较成熟的语言(如Java、C++等)的好用;

8Node.js基于事件驱动架构,events模块是Node.js最核心的模块。