NodeJS是运行在Chrome V8引擎上,解析JavaScript的运行环境。其特点事件驱动、无阻塞IO,轻量级,运行高效,基于npm管理。
(1)NodeJS与JavaScript的区别
NodeJS是运行解析JavaScript脚本的运行环境,相当云Java对JVM。
(2)NodeJS
① NodeJS的结构包含V8 JavaScript解析引擎,ECMAScript。
②中间层(提供文件操作、网络操作),接近操作系统接口的开发人员使用。
③硬件层
(3)NodeJS社区
2009年,作为第三方项目托管到githup,
(4)安装与配置
从下载nodejs包。
windows环境搭建,下载 .mis包,下一步安装即可。
(5)node基础
①REPL (Read-eval-print-loop)
其实就是一个运行javascript的cmd命令行工具,运行JavaScript代码。
(6)global全局变量
var a = 123;
b = 456;
这两行代码的差别,在浏览器解析js引擎中会创建一个window的全局变量 var a = 123;这种方式会将a变量给window。
nodejs 有一个全局变量global,与浏览器解析js产生一个window全局对象一样,但是var a 变量定义方式并不会把a 给全局gobal,因为nodejs对js文件限制的作用域就是js文件内,通过a = 值的方式可以将变量a给全局变量global。
这里列出其他的一些常用的全局变量
__dirname & __filename 当前文件夹和当前文件目录 |
setInterval() & clearInterval() |
setTimeout() & clearTimeout() |
console |
exports & module |
process |
require() |
Class:Buffer |
(7)console
nodejs 下的相比浏览器环境下的console有所增强。
①断言 console.assert(express,out); express为条件表达式,out为表达式不成立输出的内容
②console.time() & console.timeEnd() 计算出运行在这两段代码中的运行时间,传入的参数要一致。
(8)Process
process对象提供当前node的进程信息,
process.version取版本号 在控制台做标准输出 process.stdout.write(`123123`); process.pid:当前进程的进程号。 process.version:Node的版本,比如v0.10.18。 process.platform:当前系统平台,比如Linux。 process.env:指向当前shell的环境变量,比如process.env.HOME。 process.stdout:指向标准输出。 process.stdin:指向标准输入。 |