前端面试题精选

一、TCP(Transmission Control Protocol)

TCP传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议。通讯双方建立一次tcp连接,需要经过三次步骤1、客户端发送syn包(syn=j)到服务器,并入SYN_SEND状态,等待服务器确认。2、服务器收入syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),既SYN+ACK包,此时服务器进入SYN_RECV状态。3、客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。(tcp在握手过程中并不携带数据,而是在三次握手完成之后才会进行数据传送)

SYN:synchronous 建立联机

ACK:acknowledgement 确认

SYN_SENT 请求连接

SYN_RECV 服务端被动打开后,接收到了客户端的SYN并且发送了ACK时的状态,再进一步接收到客户端的ACK就进入ESTABISHED状态。

UDP(User Datagram Protocol )用户数据报协议

UDP是非面向连接协议,使用udp协议通讯并不需要建立连接,它只负责把数据尽可能发送出去,并不可靠,在接收端,UDP把每个消息断放入队列中,接收端程序从队列中读取数据。

TCP/IP是位于传输层上的一种协议,用于在网络中传输数据;

二、socket(嵌套字)

socket是一组实现TCP/UDP通信的接口API,既无论TCP还是UDP,通过对scoket的编程,都可以实现TCP/UCP通信。(TCP或UDP是一种计算机网络通信中在传输层的一种协议,可以简单的理解成是一种约定,只有履行合同才是实质性的行动,所以无论是TCP还是UDP要产生作用,都需要有实际性的行为去执行才能体现协议的作用。socket就是实现这种作用的方法)socket作为一个通信链的句柄,它包含了网络通信必备的5种信息。1、连接使用的协议。2、本地主机的IP地址。3、本地进程的协议端口。4、远地主机的IP地址。5、远地进程的协议端口。即可知道,socket包含了通信本方和对方的ip和端口以及连接使用的协议(TCP/UDP)。通信双方中的一方(客户端)通过socket对另一方(服务端)发起连接请求,服务端在网络上监听请求,当收到客户端发来的请求之后,根据socket里携带的信息,定位到客户端,就相应请求,把socket描述发给客户端,双方确认之后连接就建立了。

socket连接过程的三个步骤

1、服务器监听:服务器实时监控网络状态等待客户端发来的连接请求

2、客户端请求:客户端根据远程主机服务器的IP地址和协议端口向其发起连接请求

3、连接确认:服务端收到socket的连接请求之后,就响应请求,把服务端socket描述发给客户端,客户端收到后一但确认。则双方建立连接,进行数据交互。

socket连接一旦建立就保持连接状态,而HTTP连接则不一样,它基于tcp协议的短连接,也就是客户端发起请求,服务器响应请求之后,连接就会自动断开,不会一直保持。

三、URL(Uniform Resource Locator)统一资源定位符

URL是因特网上标准的资源地址

URL标准格式:协议类型:[//服务器地址[:端口号]][/资源层级UNIX文件路径]文件名?查询

scheme类型

3、ftp 文件传输协议 用于将文件下载或上传

4、file 本地文件

HTTP协议是应用层协议,基于TCP协议,用于包装数据,程序使用它进行通信,可以简单高效的处理通信中数据的传输和识别处理

四、DNS(Domain Name Server)域名服务器

DNS是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器。DNS中保存了一张域名(domain name)和与之相对应的IP地址 (IP address)的表,以解析消息的域名。

在浏览器输入域名后的解析过程

浏览器根据地址去本身缓存中查找dns解析记录,如果有,则直接返回IP地址,否则浏览器会查找操作系统中(hosts文件)是否有该域名的dns解析记录,如果有则返回。

如果浏览器缓存和操作系统hosts中均无该域名的dns解析记录,或者已经过期,此时就会向域名服务器发起请求来解析这个域名。

请求会先到LDNS(本地域名服务器),让它来尝试解析这个域名,如果LDNS也解析不了,则直接到根域名解析器请求解析

根域名服务器给LDNS返回一个所查询余的主域名服务器(gTLDServer)地址。

此时LDNS再向上一步返回的gTLD服务器发起解析请求。

gTLD服务器接收到解析请求后查找并返回此域名对应的Name Server域名服务器的地址,这个Name Server通常就是你注册的域名服务器(比如阿里dns、腾讯dns等)

Name Server域名服务器会查询存储的域名和IP的映射关系表,正常情况下都根据域名得到目标IP记录,连同一个TTL值返回给DNS Server域名服务器

把解析的结果返回给用户,用户根据TTL值缓存在本地系统缓存中,域名解析过程结束。

五、HTTP请求发起和响应

在一个web程序开发中,一般都有前端和后端之分,前端负责向后端请求数据和展示页面,后端负责接收请求和做出响应发回给前端,他们之间的协作桥梁是API,而API其实就是一个URL,作为HTTP连接的一种具体载体。

用户输入URL到浏览器显现给用户页面经过了什么过程

用户输入URL,浏览器获取到URL

浏览器(应用层)进行DNS解析(直接输入IP地址既跳过该步骤)

根据解析出的IP地址+端口,浏览器(应用层)发起HTTP请求,请求中携带(请求头header(也可细分为请求行和请求头)、请求体body)

请求到达传输层,tcp协议为传输报文提供可靠的字节流传输服务,它通过三次握手等手段来保证传输过程中的安全可靠。通过对大块数据的分割成一个个报文段的方式提供给大量数据的便携传输。

到网络层, 网络层通过ARP寻址得到接收方的Mac地址,IP协议把在传输层被分割成一个个数据包传送接收方。

数据到达数据链路层,请求阶段完成

接收方在数据链路层收到数据包之后,层层传递到应用层,接收方应用程序就获得到请求报文。

接收方收到发送方的HTTP请求之后,进行请求文件资源(如HTML页面)的寻找并响应报文

发送方收到响应报文后,如果报文中的状态码表示请求成功,则接受返回的资源(如HTML文件),进行页面渲染。

(body包含请求的内容)

六、页面渲染过程

内容解释

HTML parser:HTML解析器,其本质是将HTML文本解释成DOM tree。

CSS  parser:CSS解析器,其本质是讲DOM中各元素对象加入样式信息

JavaScript引擎:专门处理JavaScript脚本的虚拟机,其本质是解析JS代码并且把逻辑(HTML和CSS的操作)应用到布局中,从而按程序要的要求呈现相应的结果

DOM tree:文档对象模型树,也就是浏览器通过HTMLparser解析HTML页面生成的HTML树状结构以及相应的接口。

render tree:渲染树,也就是浏览器引擎通过DOM Tree和CSS Rule Tree构建出来的一个树状结构,和dom tree不一样的是,它只有要最终呈现出来的内容,像或者带有display:none的节点是不存在render tree中的。

layout:也叫reflow 重排,渲染中的一种行为。当rendertree中任一节点的几何尺寸发生改变了,render tree都会重新布局。

repaint:重绘,渲染中的一种行为。render tree中任一元素样式属性(几何尺寸没改变)发生改变了,render tree都会重新画,比如字体颜色、背景等变化。

src source(缩写),指向外部资源的位置,指向的内容将会应用到文档中当前标签所在位置。

3、浏览器解析方式不同:当浏览器解析到src ,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等也如此,类似于将所指向资源应用到当前内容。这也是为什么建议把 js 脚本放在底部而不是头部的原因。

八、link和@import的区别

两者都是外部引用 CSS 的方式,但是存在一定的区别:

(1)link是XHTML标签,除了能够加载CSS,还可以定义RSS等其他事务;而@import属于CSS范畴,只可以加载CSS。

(2)link引用CSS时,在页面载入时同时加载;@import需要页面完全载入以后再加载。

(3)link是XHTML标签,无兼容问题;@import则是在CSS2.1提出的,低版本的浏览器不支持。

(4)link支持使用Javascript控制DOM改变样式;而@import不支持。

九、HTML

新的内容标签:header nav content footer article aside

更好的单元格体系:

音频、视频API:video radio

画布(Canvas) API

地理(Geolocation) API

网页存储(Web storage) API:localStorage,sessionStorage

拖拽释放(Drag and drop) API

3.行内元素有哪些?块级元素有哪些? 空(void)元素有那些?

4.介绍一下你对浏览器内核的理解?

5、请描述一下 cookies,sessionStorage 和 localStorage 的区别?

7.如何实现浏览器内多个标签页之间的通信? (阿里)

十、CSS

4.如何居中div?

6.请解释一下CSS3的Flexbox(弹性盒布局模型),以及适用场景?

THE END
0.过敏性休克抢救!肾上腺素注射十问十答心内注射、气管内滴入、雾化吸入等注射方式,哪种注射方式才是最优先选择? 对于已经开通静脉通道的患者,静脉注射是最优先选择。骨通道注射和静脉注射方式一样,药物能很快起效,但是这种方式对操作者的技术水平和相关设备要求比较高,很难普及。 如果没有开通静脉通道,肌肉注射是最优先选择。笔者在长期急诊工作中发现,严重jvzquC41m0yjpj3ep1gsvrhnga717<:3:9:3a
1.造价工程师《安装计量》真题91.一般用于压力不高,介质为气体、液体和无渗漏危险管路上的仪表阀和管道连接,应采用的连接方式为( )。 A.卡套式连接 B.焊接 C.法兰连接 D.粘接连接 答案:A 解析:仪表阀门根据介质特性、压力及设计要求,采用多种方式安装。一次阀门大多采用焊接接头连接方式,这种连接方式可经常拆卸、加垫、清洗、更换。焊接阀则jvzquC41yy}/qq6220ipo8pcqunj1ƒfqlkg0vrpw17:98B60jvsm
2.钳工试题题库72.冷装法适用于哪种情况的装配 答:冷装法多用于变形量较小、过渡配合或小过盈配合的装配。 73.什么情况下优先选用压入法装配 答:配合要求较低或配合长度较短的过渡配合的连接件的装配应优先选用压入法。 74.在装配过程中,优先选用什么配合 答:在装配过程中,优先选用基孔制配合。 75.轴的尺寸精度包括那几方jvzquC41o0972mteu0tfv8iqe1kf3;:433=:0qyon
3.面试题·PHP常用操作·看云Memcahce是把所有的数据保存在内存当中,采用hash表的方式,每条数据又key和value组成,每个key是独一无二的,当要访问某个值的时候先按照找到值,然后返回结果。Memcahce采用LRU算法来逐渐把过期数据清除掉。 23,优化MYSQL数据库的方法 (1)选择最有效率的表名顺序(2)WHERE子句中的连接顺序(3)SELECT子句中避免使用‘jvzquC41yy}/mjsenq{e0ls1eee6:==:92741kfqujomk878768:5
4.中国移动5G网络14、 下列关于5GC和NG-RAN节点连接方式描述正确的是 A.AMF/UPF与NG-RAN:一对多连接B.AMF/UPF与NG-RAN:多对一连接 C.AMF/UPF与NG-RAN:多对多连接 D.AMF/UPF与NG-RAN:一对一连接 待检查 15、 HP DL380 Gen9 安装第二个PCIe riser board需要什么条件() jvzq<84yyy4489iqe0ipo8hqpvkov8751281686716:829757a718?6952610|mvon
5.《现代交换技术》期末试题库41.ISUP消息中的路由标记由目的地信令点编码(DPC)、源信令点编码(OPC)和链路选择码(SLS)组成。路由标记的作用是供MTP的第三级选择信令路由和信令链路。电路识别码(CIC)用来识别与该消息有关的呼叫所使用的中继电路。 42.分组交换有虚电路(面向连接)和数据报(无连接)这两种方式。 jvzq<84yyy4489iqe0ipo8iqewsfp}4441642;4351=769<:8;e22:>8767827xjvor
6.组态王常见问题集锦SIMATIC西门子PLCSIMATIC2.35请问"站点"与"网络站点"两种连接方式的区别是什么? 答:网络站点与站点都是应用与组态王之间的数据通讯联网方式,两者的区别结构在于: 网络站点方式是主从结构,他是将网络中的一台组态王作为采集站(单机模式,在其上 建立网络站点),其他组态王作为网络设备连接到组态王采集站(配成网络 IO 模式)。 jvzq<84yyy4tkvfvke4dqv3ep1oofn}0rjv@cFxjqy,dc}nf?5?'kmB548
7.思科学院cisco独家整理题库(2023.9月更新)当使用eui在源主机和目标主机上运行的进程之间传输数据 提供专用的端到端连接 为最终设备提供唯一的网络标识符 13. 哪两个语句描述路由器上的 IPv4 路由表的功能?(选择两个。 直接连接的接口在路由表中将有两个路由源代码:C 和 S。 如果有两个或多个可能的路由到达同一目标,则与较高指标值关联的路由将包含在路由表中jvzquC41dnuh0lxfp0tfv8|gkzooa=845582;8ftvkimg8igvcomu86347976:<
8.网络常考题woshizylK.PICTPICT 格式作为在应用程序之间传递图像的中间文件格式,广泛应用于 Mac OS 图形和页面排版应用程序中 L.MPEG ANSWER:A B G H K L 76.在OSI 参考模型的会话层协商发送端与接收端的工作方式。 T.True F.False ANSWER:T 78.ISO(International Organization for Standardalization)规定的网络管 jvzquC41yy}/ewgnqiy/exr1yqyikƒ~n1cxdjr{g1462485;14>04A5253;/j}rn
9.年前最后一波面试潮!腾讯T4梳理2022年最新999道Java岗必备面试题5、反射的实现方式: 6、实现Java反射的类: 7、反射机制的优缺点: 8、Java反射API 9、反射使用步骤(获取Class对象、调用对象方法) 10、获职Class对象有几种方法 11、利用反射动态创建对象实例 Java序列化面试题 1、什么是javs序列化,如何实现java序列化? 2、保存(特久化)对象及其状态到内存或者磁盘 3、序 jvzquC41oconcr3ep1gsvrhng1jfvjnnAhoe?:;99:;49;7(ghoe?vJmkdWnDAsy2SyVL^qz/2m
10.思科计算机网络答案(包含第1~11章节)思科网院题库答案B.它是一个协议,用于确定本地网络中计算机之间的通信方式。 C.它是一个组织,可让个人和企业连接到 Internet。 D.它是一种网络设备,结合了多种不同网络设备的功能。 4.哪两项是可扩展网络的特征? (选择两项。) 选择一项或多项: A.流量增加时容易过载 jvzquC41dnuh0lxfp0tfv8|gkzooa=845582;8ftvkimg8igvcomu86546649:;
11.2024年3月计算机网络三级试题及答案15.因特网上为用户之间发送和接收信息提供的一种快速、廉价的现代化通信手段称为(电子邮件服务/E-MAIL服务)。 16.因特网域名中,二级域名Ac代表(科研机构 )。 17.交换式局域网从根本上改变了“共享介质”的工作方式,它可以通过支持交换机端口结点之间的多个(并发连接),达到增加局域网带宽,改善局域网的性质与服务jvzquC41yy}/qq6220ipo8pcqunj1whtg55uktz14575:=3jvor
12.地铁事故范文①高峰拥挤:地铁相对于其他出行方式更加的快速、舒适和便捷。因此选择地铁的乘客量就很大,容易在上下车时产生碰撞拥挤现象,特别是上、下班的客流高峰期,拥挤现象较为严重,容易造成踩踏致死或掉入轨道等安全隐患。例如:2001年12月4日在上海地铁一号线人民广场站内,一名大连籍女子就被等车的人群挤下站台,当场被驶入站台的地铁列车轧死。jvzquC41yy}/i€~qq0ipo8mcqyko1?=:324ivvq
13.SL2054.4.2 调节池布置可因地制宜采用下列方式之一: 8 1 与引水渠道结合或相连通。 2 与前池结合或相连通。 3 调节池通过连接管(渠)直接向压力管道或前池供水。 5水力设计 5. 1一般规定 5. 1. 1 水力设计应包括下列内容: 1 引水渠道系统恒定流和非恒定流的水力计算。 jvzquC41yy}/5?5fqe4dp8rkr1719B;4;3720qyon
14.竞争性谈判学前教育实训中心暨大学生活动中心贵宾室设备采购(二)报名方式:谈判当天14:00—14:30现场报名,报名费(300元,不退)缴纳方式同保证金缴纳方式(不收现金,需谈判当天9点前到账)。报名地点:重庆工贸职业技术学院办公楼608室。未按时缴纳报名费的响应文件视为废标。(请在递交响应文件时同时出示由我院财务处出具的收款票据或者打印清晰加盖公章的转账凭证,财务处在第二jvzquC41yy}/ezlo{0io1rshq1716?4769
15.1+X智能网络应用与优化A.为终端设备提供连接和转发 B.通过流量控制策略控制流量转发 C.提供数据包的快速转发 D.提供网络之间的路由 2. 以下关于网络核心层的叙述中,正确的是(B) A . 为了保障安全性,应该对分组进行尽可能多的处理 B . 在区域间高速地转发数据分组 C . 由多台二、三层交换机组成D . 提供多条路径来缓解通信瓶颈jvzquC41dnuh0lxfp0tfv8r2a7767==331gsvrhng1jfvjnnu1747;;349:
16.WLAN(理论)A. 客户端可以成功连接AP,但无法正常通信 B. 客户端可以成功连接AP,也可以正常通信,但数据报文为明文传输 C. 客户端会提示密码错误,要求重新输入 D. 客户端无法成功连接AP 63.当AP中配置SSID加密类型为WEP加密(密码为12345),MAC层认证方式 为shared-key,而客户端输入的密码为54321会出现以下哪种现象( A) A.jvzquC41o0972mteu0tfv8iqe1k88>j98562h?>g53:45;>6934ivvq