Node.js介绍(Node是单线程)
- Node是对ES标准一个实现,Node也是一个JS引擎
- 通过Node可以使js代码在服务器端执行
- Node仅仅对ES标准进行了实现,所以在Node中不包含DOM 和 BOM
- Node中可以使用所有的内建对象
String Number Boolean Math Date RegExp Function Object Array
而BOM和DOM都不能使用
但是可以使用 console 也可以使用定时器(setTimeout() setInterval())
- Node可以在后台来编写服务器
Node用途:
# Web服务API
# 实时多人游戏
# 后端的Web服务,例如跨域、服务器端的请求
# 基于Web的应用
# 多客户端的通信,如即时通信
补充:
1.命令行窗口(小黑屏)、CMD窗口、终端、shell
- 开始菜单 --> 运行 --> cmd --> 回车
windows + R
- 常用的指令:
dir 列出当前目录下所有文件
cd 目录名 进入到指定的目录
md 目录名 创建一个文件夹
rd 目录名 删除一个文件夹
- 目录
. 表示当前目录
.. 表示上一级目录
- 环境变量(windows系统中的变量)
当我们在命令行窗口打开一个文件,或调用一个程序时,系统会首先在当前目录下寻找文件程序,如果找到了则直接打开
如果没有找到则会依次到环境变量path的路径中寻找,直到找到为止
如果没找到则报错
var a = 100; function fn(){ function fn2(){ console.log(a); } fn2(); } fn()
- 所以我们可以将一些经常需要访问的程序和文件的路径添加到path中,
这样我们就可以在任意位置来访问这些文件和程序了
2、进程和线程
进程
- 进程负责为程序的运行提供必备的环境
- 进程就相当于工厂中的车间
线程
- 线程计算机中的最小的计算单位,线程负责执行进程中的程序
- 线程就相当于工厂中的工人
传统的服务器都是多线程的
- 每进来一个请求,就创建一个线程去处理请求
Node的服务器单线程的
- Node处理请求时是单线程,但是在后台拥有一个I/O线程池