NodeJS 基础 什么是NodeJS JS 是脚本语言,脚本语言都需要一个解析器才能运行
对于写在HTML 页面里的JS,浏览器充当了解析器的角色
而对于需要独立运行的JS,NodeJS 就是一个解析器
每一种解析器都是一个运行环境,不但允许JS 定义各种数据结构,进行各种计算,还允许JS 使用运行环境提供的内置对象和方法做一些事情
例如运行在浏览器中的JS 的用途是操作DOM,浏览器就提供了document 之类的内置对象
而运行在NodeJS 中的JS 的用途是操作磁盘文件或搭建HTTP 服务器,NodeJS就相应提供了fs、http 等内置对象
有啥用处 尽管存在一听说可以直接运行JS 文件就觉得很酷的同学,但大多数同学在接触新东西时首先关心的是有啥用处,以及能带来啥价值
NodeJS 的作者说,他创造NodeJS 的目的是为了实现高性能Web 服务器,他首先看重的是事件机制和异步IO 模型的优越性,而不是JS
但是他需要选择一种编程语言实现他的想法,这种编程语言不能自带 IO 功能,并且需要能良 好 支持 事件机制
JS 没 有自带 IO 功能,天 生 就用于处理 浏览器中的 DOM 事件,并且拥 有一大群 程序 员 ,因 此 就成 为了天 然 的选择
如他所 愿 ,NodeJS 在服务端 活 跃 起 来,出 现了大批 基于NodeJS 的Web 服务
而另 一方面,NodeJS 让 前 端 众 如获 神 器,终 于可以让 自己 的能力 覆 盖 范 围 跳 出浏览器窗 口 ,更 大批 的前 端 工 具 如雨 后 春 笋
因 此 ,对于前 端 而言,虽 然 不是人 人 都要拿 NodeJS 写一个服务器程序 ,但简 单可至 使用命 令 交 互 模式 调 试 JS 代 码 片 段 ,复 杂 可至 编写工 具 提升 工 作效 率
NodeJS 生 态 圈