什么是Nodejs

1. nodejs是什么

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

    推荐阅读