什么是Node.js
Node.js是采用C++语言编写而成,是一个JavaScript的运行环境。
Node.js 采用了 Google Chrome 浏览器的 V8 引擎,速度非常快,性能非常好。同时还提供了很多系统级的 API,如文件操作、网络编程等。浏览器端的 Javascript 代码在运行时会受到各种安全性的限制,对客户系统的操作有限。相比之下,Node.js 则是一个全面的后台运行时,为 Javascript 提供了其他语言能够实现的许多功能。
Node.js 发展简史
- 2009年2月,Ryan Dahl 在博客上宣布准备基于 V8 创建一个轻量级的 Web 服务器并提供一套库。
- 2009年5月,Ryan Dahl 在 GitHub 上发布了最初版本的部分 Node.js 包,随后几个月里,有人开始使用 Node.js 开发应用。
- 200 年11月和 2010 年 4 月,两届 JSConf 大会都安排了 Node.js 的讲座。
- 2010年年底,Node.js 获得云计算服务商 Joyent 资助,创始人 Ryan Dahl 加入 Joyent 全职负责 Node.js 的发展。
- 2011年7月,Node.js 在微软的支持下发布 Windows 版本。
Node.js能做什么?
- 生成动态页面内容
- 在服务器上创建、打开、读取、写入、删除和关闭文件
- 手机表单数据
- 添加、删除、修改数据库中数据
Node.js的特点
- 单线程:Node.js 在设计上也是比较大胆,它以单进程、单线程模式运行。
- 非阻塞I/O:Node.js中采用了非阻塞型I/O机制,在执行了访问数据库的代码之后,将立即转而执行其后面的代码,把数据库返回结果的处理代码放在回调函数中,从而提高了程序的执行效率。
- 事件驱动 event-driven:Node.js 的设计思想中以事件驱动为核心,它提供的绝大多数 API 都是基于事件的、异步的风格。