参考了网上很多资料,打算自己跟着敲一下(写个笔记加深下印象吧)缓慢更新...
前端面试高频题,八股文精华篇前端的面试高频率的题目,附带解析。八股文你都不了解一下吗?那还怎么面试,怎么知道自己的深浅。 - 掘金
浏览器和协议
1. 从输入url到展示页面加载的过程
- 输入网址 + 回车: 用户发起请求。
- DNS 解析: 把域名(网站名)翻译成服务器的真实 IP 地址。
- TCP 连接: 浏览器和服务器建立可靠的网络连接。
- 发送 HTTP 请求: 浏览器告诉服务器它想要什么。
- 服务器处理: 服务器准备被请求的资源(找文件或动态生成)。
- 返回 HTTP 响应: 服务器把资源(主要是 HTML)送回给浏览器。
- 浏览器解析 HTML: 浏览器读取 HTML,理解页面结构。
- 加载解析 CSS/JS/资源: 获取样式表、脚本、图片等其他文件。
- 构建渲染树: 结合结构和样式,计划如何显示。
- 布局 (Layout/Reflow): 计算每个元素的位置和大小。
- 绘制 (Painting): 把内容画到屏幕上。
- JS 执行: 运行 JavaScript 脚本(可能随时发生,影响步骤 7-11)。
- 页面加载完成: 所有内容显示完毕并可用。
2、TCP三次握手和四次挥手
关键点总结 (三次握手):
- 目的: 同步初始序列号,建立可靠的双向通信通道。
- 次数: 3 次交互。
- 标志: SYN -> SYN + ACK -> ACK。
- 作用: 避免历史重复连接(防止上次未关闭的连接干扰)、协商初始序列号、确保双方收发能力正常。
http和https的区别
http是明文传输,因此不够安全
https是加密传输,更加安全
跨域的解决方案
设置代理,拦截器顺带处理
常见的服务器返回的code意义
200 请求成功、400请求失败、405客户端请求的0方法、407 客户端缺少代理 、430客户端所发起的请求被拒绝、404没有找到请求的网页地址或者请求的路径不存在
HTML
语义化标签:这是HTML5的核心特性,能够更清晰布局结构
<header><nav><main><footer>
严格模式和混杂模式
开启严格模式
<!-- 所有项目都必须写! -->
<!DOCTYPE html>
iframe的优缺点
能够完整展示出内置的页面来
提高页面代码的复用性,避免广告等的加载问题
解决了部分的跨域问题
缺点:
iframe会阻塞主页面的onload事件
无法被一些搜索引擎索引
页面会增加许多html庆七,会产生很多页面
在出现区域的上下、左右以内滚动条,会挤占空间
CSS
盒模型
一个标准的盒模型是有padding\magin\border\content四部分所组成的
常用选择器
!important(从上至下优先级变低)
行内
id
class
标签
子选择器
伪类