nodejs

浏览器事件环

js的主线程是单线程,在同一时间内只能干一件事

宏任务:定时器,js渲染,UI渲染,I/O
微任务:promise,Object.observe,process.nextTick,MutationObserver

*先执行微任务后执行宏任务;只有js中script的宏任务会先执行

node

nodejs是运行环境

他有什么作用呢?
1.创建web服务器
2.作为中间件
3.工具

node事件环
node也是单线程
node适合I/O密集;不适合CPU密集(压缩,合并,加密,解密)-大量运算的

node中的this是个空对象
console.log(this);//{}为了做模块化

globe常见属性

  • Buffer 处理二进制数据
  • process.nextTick()表示定义下一个要执行的动作,在下一个轮询的时间点上执行
  • 定时器的各种属性
    clearInterval();clearTimeout();setInterval();setTimeout();
    clearImmediate();setImmediate();

process常见属性

  1. process.platform当前的系统(平台信息)
  2. console.log(process.cwd());显示当前目录(是一个函数)
  3. console.log(process.env);显示当前系统的环境
  4. console.log(process.argv);返回的是一个数组:[第一个是node运行程序;第二个元素为当前执行的JavaScript文件路径;剩余的为其他命令行参数]

node模块化

common js规范
1.导入模块 require()
2.导出模块 module.exports

模块的分类
1.核心模块(内置模块fs,http等)
2.自定义模块
3.第三方模块

node的各模块
1.fs模块 文件系统模块
fs.readFile()读取异步的文件模块
fs.readSyncFile()读取同步的文件模块
fs.existsSync()判断文件是否存在

2.path模块 处理路径模块
path.resolve();把路径解析成绝对路径
__dianame 文件的当前目录
path.resolve(__dirname,‘a’,’/’)文件返回到根目录
path.join(__dirname,‘a’,’/’) 返回的是文件最后加一个
Basename()基础名
console.log(path.basename(‘a.txt’,’.txt’));输出 //a
extname()扩展名
console.log(path.extname(‘a.txt’));//.txt
dirname()取父目录
console.log(path.dirname(__dirname));

3.vm模块
解析字符代码
vm.runInThisContext(‘console.log(123)’);
此方法用于创建一个独立的沙箱运行空间,code内的代码可以访问外部的global对象,但是不能访问其他变量,而且code内部global与外部共享

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值