node.js

一.__dirname和__filename

 

在node.js环境中, 有两个全局变量 __dirname __filename

1.他们保存的是字符串

2.__dirname 当前js文件所在的目录:绝对路径

__filename 当前js文件的目录:绝对路径

var fs=require('fs')

fs.readFile(__dirname+'/index.html',(err,data)=>{
    console.log(err,data.tostring())
})

 二.fs模块

====读取文件

fs.readFile(path,(err,data)=>{})

path 填路径 可以绝对可以相对 err代表读取失败 data代表读取成功 它是一个buffer类型的数据(二进制数据流) 可以通过toString()转化为字符串 注意:res.end()方法接受 字符串或者buffer

====写入文件(创建文件) fs.writeFile(path ,data,callback(er)) 如果文件存在,该方法写入的内容会覆盖旧的文件内容,不存在就创建一个新的 path - 文件路径 data - 要写入文件的数据,可以是 String(字符串) callback - 回调函数,回调函数只包含错误信息参数(err),在写入失败时返回。

====删除文件 fs.unlink(path,callback(err)) path - 文件路径。 callback(err) - 删除回调函数,err错误信息

====以追加方式写文件 fs.appendFile(__dirname + '/test.txt', '我会追加到文件内容的末尾', function (er) { console.log('追加内容完成'); })

====创建目录 fs.mkdir(__dirname + '/test', function (err) { if(err) throw err console.log('创建目录成功') })

====移动/重命名文件或目录:整个功能相当于重命名一个文件/文件夹路径 fs.rename(oldPath, newPath, callback); oldPath, 原目录/文件的完整路径及名; newPath, 新目录/文件的完整路径及名;如果新路径与原路径相同,而只文件名不同,则是重命名 callback(err), 操作完成回调函数;err操作失败对象

移动文件有一个bug:新路径和旧路径必须是同一个根盘

====拷贝文件 fs.copy(oldPath, newPath, callback); oldPath, 原文件的完整路径; newPath, 新文件的完整路径; callback(err), 操作完成回调函数;err操作失败对象

拷贝文件以后两个文件都会存在磁盘中

三.前端网页加载

一个网页的渲染资源是一个个动态加载的数据组合而成的,不是一次就把整个渲染的页面加载了

1.用户浏览器地址栏输入网址==>请求后端,后端传输一份html编码的文本文档然后就断开连接了

2.浏览器开始运行html文件的编码

解析时遇到了img-src属性 会再次请求另外一个网址==>后端传输一份image编码的文件然后断开连接,浏览器把图片的编码按照CSS结构进行渲染

解析时遇到了 link-href属性 会再次请求另外一个网址==>后端传输一份对应编码的文件然后断开连接

解析时遇到了 网络请求的代码等等....

3.页面渲染

页面按照解析好的DOM模型和CSS层叠样式表结合为renderTree然后绘制页面

经典面试题:用户从输入url到页面渲染过程发生了什么?

四.网址的组成

协议://ip:port/pathname?querystring#hash

五.url模块

可以把url网址解析为一个对象

var urlobj=url.parse(req.url) urlobj.pathname urlobj.query

六.querystring模块

可以吧querystring参数解析为一个对象

var urlobj=url.parse(req.url)

var queryobj=querystring.parse(urlobj.query)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值