node.js是什么?
- node.js不是一门语言,不是库,不是框架,
- node.js是一个JavaScript的一个运行时环境;
以前只有浏览器才能够解析执行JavaScript代码,但是现在的JavaScript可以完全脱离浏览器来运行,因为node.js。
浏览器原来的JavaScript是ECMAScript,只有基本的语法,没有DOM、BOM等操作。在node.js这个JavaScript执行环境中,为JavaScript提供了一些服务器级别的操作API
- 例如文件读写
- 网络服务的构建
- 网络通信
- HTTP服务器
- …
Node.js 构建于Chrome的V8引擎之上
- 代码只是带有特定格式的字符串
- 引擎可以帮你认识它,可以帮你去解析和执行
- GoogleChrome的V8引擎是目前公认的解析执行JavaScript代码最块的
- Node.js的作者把GoogleChrome中的V8执行引擎移植了出来,开发了一个独立的JavaScript运行时环境。
node.js的特性
- 事件驱动
- 非阻塞IO模型(异步)
- 轻量和高效
npm是基于node.js开发出来的一个包管理工具,绝大多数的JavaScript相关包都存在了npm上,目的是为了开发人员更方便下载使用。