1. nodejs是什么
-
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
不是一门语言、库、框架
是一个js运行时环境
nodejs可以解析和执行js代码,相比于以前只有浏览器可以解析执行js代码,现在的Js可以完全脱离浏览器来运行。
-
浏览器中的js与nodejs中的Js的区别
浏览器中的js由ecmascript、DOM、BOM三部分组成
nodejs中的js没有BOM、DOM,只有ecmascript
且在node这个js执行环境中为js提供了一些服务器级别操作的API
1. 文件读写(浏览器中的Js不支持)
2. 网络服务的构建
3. 网络通信
4. HTTP服务器...
-
构建于Chrome的V8引擎之上的运行时环境
- 引擎:解析执行Js代码
- Chrome的V8引擎是目前公认的解析执行js代码最快的
- Nodejs作者把Chrome中的V8引擎移植出来,开发了一个独立的js运行时环境(Nodejs)。
-
Node.js uses an event-driven,non-blocking I/O model that makes it lightweight and effcient
- event-driven 事件驱动
- non-blocking I/O model 非阻塞IO模型(异步)
- lightweight and efficient 轻量和高效
-
Node.js' package ecosystem,npm is the largest ecosystem of open source libraries in the world
- npm 是世界上最大的开源库生态系统,且基于Nodejs
- 绝大部分js相关的包都存放在npm上,为了让开发人员更方便的去下载使用包
2.nodejs能做什么
- web服务器后台
- 命令行工具
- npm(node)
- hexo(node)
- git(c)
- ...
- 前端接触node最多的是命令行工具:webpack,npm等
3.资源
- 《深入迁出Node.js》
- 作者:朴灵
- 偏理论,理解原理底层有帮助
- 《Node.js权威指南》API讲解
- javascript标准参考教程(alpha):https://javascript.ruanyifeng.com/
- Node入门:https://www.nodebeginner.org/index-zh-cn.html
- 官方API文档:https://nodejs.org/dist/latest-v6.x/docs/api/
- 中文文档(版本比较旧):http://www.nodeclass.com/api/node.html
- CNODE社区:https://cnodejs.org/
- CNODE-新手入门:https://cnodejs.org/getstart