前端必须知道的调试知识

90 阅读2分钟

前端必须知道的调试知识 | 青训营笔记

这是我参与「第四届青训营 」笔记创作活动的的第8天

一、PC端

PC端采用chrome开发者工具进行调试

1.动态调试

运行在Chrome浏览器,打开F12可以调试

点击下图中:hov或者.cls可以通过类或伪类动态调试style image.png

2.通过日志进行调试

console.log("1");
console.log(1);
console.log("study");
console.warn("study");
console.info("study");
console.debug("study");
console.error("study");

图中整型1和字符串1的颜色是一样的,没有像老师讲的那样通过颜色区分出来;
不同类型的日志区分也不太大 image.png

console的强大功能:

console.table()可以具象化展示json和数组数据

image.png console.dir可以以文件树的形式展示对象是属性

image.png 可以通过占位符给日志添加样式:%s字符串;%o对象;%c样式;%d数字

console.log( '%c  红色','color:red;font-size:50px;' )

image.png console.time()

计算器的起始方法,结束方法为 console.timeEnd() ,该方法执行后会将执行时长显示在控制台上

3.断点调试

1.在调试的地方debugger关键字打断点

image.png

image.png

2.通过在调试语句前面直接打断点

image.png image.png

3.压缩和混淆后的代码如何调试

为了安全考虑,在上线前的js代码会被压缩,压缩后变得不可阅读,很难去解析出每一句代码的意思。因此可以采用打包工具,打包的时候配置得到映射文件,将映射文件保留,除去映射文件后的文件发布,这样既保证了安全性,又使得开发人员可以收集错误去找到bug。

比如webpack打包工具,可以在开发环境下配置sourceMap,打包的时候得到映射文件,上线发布不带映射文件,通过代理与映射文件匹配进行调试

4.Network

可以模拟不同的网络环境,方便适配弱网环境

image.png

5.Performance可以抓取网站运行时状态分析性能,进行统计等等

便于测试页面卡顿,解决问题从而提高性能和用户体验 image.png

二.移动端调试

  • 1.ios和Android都可以通过数据线连接开发平台硬件进行访问与调试
  • 2.通过VConsole插件调试
  • 3.使用代理工具进行调试,比如Charles

三.其他调试

1.线上即使修改保存调试时中间代码

image.png

2.利用代理解决开发阶段的跨域问题

  • 原理就是在向浏览器请求的时候,通过代理去访问真实的请求服务器的请求路径
  • 如果是部署上线之后,可以通过nginx反向代理实现跨域请求