Node.JS笔记1
1.node.js概述
简单的说node.js就是基于Chrome V8引擎的JavaScript运行环境
(1)对比JS
JS运行在客户端浏览器,存在多种解释器,有代码兼容性;node.js运行在服务器端,只有v8引擎一种解析器,不存在代码兼容性
两者都有相同的内置对象和自定义对象,不同的宿主对象
JS用于开发浏览器端的交互效果,node.js用于服务器端功能开发
(2)特点
属于单线程运行逻辑,不会产生死锁,支持数万个并发连接,适合做基于社交网络的大规模web应用
2.全局对象
(1)global对象:检测一个变量或者函数是否为全局
(2)console对象
(3)process对象
(4)Buffer对象:缓冲区,是内存中临时存储数据的区域
3.定时器
(1)一次性定时器:setTimeout(回调函数,间隔时间) 清除定时器:clearTimeout(x);
(2)周期性定时器:setInterval(回调函数,间隔时间) 清除定时器:clearInterval(x);
(3)立即执行定时器:setImmediate(回调函数) 清除定时器:clearImmediate(x);
4.模块系统
require:是一个函数,用于引入其他的模块,得到导出的对象
module:当前模块对象
module.exports:当前模块导出的对象
__dirname:是一个局部变量,当前模块的绝对路径
__filename:是一个局部变量,当前模块的绝对路径+模块名称
每个文件是一个模块,每个模块都是一个独立的功能,一个模块可以引入其他的模块,一个模块也可以被其他的模块引入
模块分类:分为自定义模块、第三方模块、核心模块
5.包和npm
CommonJS:是一种规范,制定了Node.js的模块化概念
包:通常指的是目录模块
npm:是用于管理包的工具模块,在node.js安装的时候会附带安装
6.文件系统模块(fs)
用于操作服务器端的文件,例如文件的读取、写入、删除....
文件分为目录形式和文件形式
(1)查看文件的状态
fs.statSync(文件的路径) /fs.stat(文件的路径,回调函数)
isFile() 是否为文件
isDirectory() 是否为目录
(2)创建目录
fs.mkdirSync(目录的路径)
(3)移除目录
fs.rmdirSync(目录的路径)
7.同步和异步
同步:在主程序中执行,会阻止后续代码的执行,通过返回值来获取结果
异步:在一个独立的线程执行,不会阻止主程序后续代码的执行,将结果以回调函数形式放入到对列

浙公网安备 33010602011771号