首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

前端面试题1(HTML篇)

html语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析; 即使在没有样式CSS情况下以一种文档格式显示,并且是容易阅读的; 搜索引擎的爬虫依赖于HTML标记来确定上下文和各个关键字的权重...在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作 HTML5 为什么只需要写 ?...HTML5 不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行) 而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型...新标签: IE8/IE7/IE6支持通过document.createElement方法产生的标签 可以利用这一特性让这些浏览器支持HTML5新标签 浏览器支持新标签后,还需要添加标签默认的样式 当然可以直接使用成熟的框架...缺点: iframe会阻塞主页面的Onload事件 搜索引擎的检索程序无法解读这种页面,不利于SEO iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载 使用iframe

1.8K10

视频直播基础技术总结1

,虽然牺牲了功耗,但是在部分细节方面表现会较优,且可控性强,兼容性强,出错情况少,推荐使用。...2)HTTP-FLV协议: 即使用HTTP协议流式的传输媒体内容。相对于RTMP,HTTP更简单和广为人知,而且不担心被Adobe的专利绑架。...HLS有一个非常大的优点:HTML5可以直接打开播放;这个意味着可以把一个直播链接通过微信等转发分享,不需要安装任何独立的APP,有浏览器即可,所以流行度很高。...对比与上述3种或实际是2种协议,RTP和它们有一个重要的区别就是默认是使用UDP协议来传输数据,而RTMP和HTTP是基于TCP协议传输。为什么UDP 能做到如此实时的效果呢?...关于TCP和UDP差别的分析文章一搜一大把,这里不在赘述,简单概括: UDP:单个数据报,不用建立连接,简单,不可靠,会丢包,会乱序; TCP:流式,需要建立连接,复杂,可靠 ,有序。

1.2K20
您找到你想要的搜索结果了吗?
是的
没有找到

HTML5离线缓存技术

之后当网络在处于离线状态下时,浏览器会通过被离线存储的数据进行页面展示。 就像cookie一样,html5的离线存储需要服务器环境。...manifest 文件可分为三个部分: CACHE MANIFEST - 在此标题下列出的文件将在首次下载后进行缓存 NETWORK - 在此标题下列出的文件需要与服务器的连接,且不会被缓存 FALLBACK...当 manifest 文件加载后,浏览器会从网站的根目录下载这三个文件。然后,无论用户何时与因特网断开连接,这些资源依然是可用的。 NETWORK 白名单,使用通配符"*"....为什么? 对于浏览器来说,manifest的加载是要晚于其他资源的....站点中的其他页面即使没有设置manifest属性,请求的资源如果在缓存中从缓存中访问 当manifest文件发生改变时,资源请求本身会触发更新

3.7K70

Java 最常见的 208 道面试题:第八模块答案

简述 tcp 和 udp的区别? TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接。 TCP提供可靠的服务。...如丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。 UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。...每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信。 TCP对系统资源要求较多,UDP对系统资源要求较少。 82. tcp 为什么要三次握手,两次不行吗?为什么?...网络层:进行逻辑地址寻址,实现不同网络之间的路径选择。 数据链路层:建立逻辑连接进行硬件地址寻址、差错校验等功能。 物理层:建立、维护、断开物理连接。...现代浏览器使用CORS在API容器如XMLHttpRequest来减少HTTP请求的风险来源。与 JSONP 不同,CORS 除了 GET 要求方法以外支持其他的 HTTP 要求。

86230

前端面试那些坑之HTML篇

在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。 2、HTML5为什么只需要写?...HTML5 不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行);而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型...html语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析; 即使在没有样式CSS情况下以一种文档格式显示,并且是容易阅读的; 搜索引擎的爬虫依赖于HTML标记来确定上下文和各个关键字的权重...9、HTML5的离线储存怎么使用,工作原理能不能解释一下? 在用户没有与因特网连接时,可以正常访问站点或应用,在用户与因特网连接时,更新用户机器上的缓存文件。...10、浏览器是怎么对HTML5的离线储存资源进行管理和加载的呢?

1.4K90

使用flv.js做直播

为什么要在这个时候探索flv.js做直播呢?原因在于各大浏览器厂商已经默认禁用Flash,之前常见的Flash直播方案需要用户同意使用Flash后才可以正常使用直播功能,这样的用户体验很致命。...WebSocket-FLV: 基于WebSocket传输FLV,依赖浏览器支持播放FLV。WebSocket建立在HTTP之上,建立WebSocket连接前还要先建立HTTP连接。...HTML5可以直接打开播放。 RTP: 基于UDP,延迟1秒,浏览器不支持。...(HTML5 原生仅支持播放 mp4/webm 格式,不支持 FLV) flv.js 为什么要绕一圈,从服务器获取FLV再解码转换后再喂给Video标签呢?...兼容方案如下: PC端 优先使用 HTTP-FLV,因为它延迟小,性能不差1080P都很流畅。 不支持 flv.js 就使用 Flash播放器播 RTMP 流。

13.1K105

理论 | 使用flv.js做直播

为什么要在这个时候探索flv.js做直播呢?原因在于各大浏览器厂商已经默认禁用Flash,之前常见的Flash直播方案需要用户同意使用Flash后才可以正常使用直播功能,这样的用户体验很致命。...WebSocket-FLV: 基于WebSocket传输FLV,依赖浏览器支持播放FLV。WebSocket建立在HTTP之上,建立WebSocket连接前还要先建立HTTP连接。...HTML5可以直接打开播放。 RTP: 基于UDP,延迟1秒,浏览器不支持。...(HTML5 原生仅支持播放 mp4/webm 格式,不支持 FLV) flv.js 为什么要绕一圈,从服务器获取FLV再解码转换后再喂给Video标签呢?...兼容方案如下: PC端 优先使用 HTTP-FLV,因为它延迟小,性能不差1080P都很流畅。 不支持 flv.js 就使用 Flash播放器播 RTMP 流。

3.6K10

Http3基础

连接进行并发完成。...QUIC 协议简介 QUIC( Quick UDP Internet Connections),快速 UDP 网络连接,是一种实验性的网络协议,基于UDP协议在两端之间进行通信,支持多路复用。...大多数情况下 TCP 协议通知数据包丢失或损坏之前可能会收到大量的正常数据,但是在纠正错误之前其他的正常请求都会等待甚至重发 而QUIC 在修复单个流时可以自由处理其他数据,也就是说即使一个请求发生了错误不会影响到其他的请求...http3.0 为什么使用 udp 而不使用 tcp 基于TCP开发的设备和协议非常多,兼容困难 提供了0-RTT支持,客户端可以在完成TLS协商前请求数,建立连接速度快 TCP协议栈是Linux内部的重要部分...相关链接 为什么HTTP3.0使用UDP协议 http2/http3协议有什么优劣

45620

前端-面试总结——http、html和浏览器

使用不同的链接方式,端口不同,一般而言,http协议的端口为80,https的端口为443 http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议...自己可以接受S发送的报文段第三次握手:S可以确认 C收到了自己发送的报文段 3.TCP和UDP的区别 (1)TCP是面向连接的,udp是无连接的即发送数据前不需要先建立链接。...WebSocket是HTML5中的协议,支持持久连续,http协议不支持持久性连接。...,因此用作持久数据;cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。...(key:本身就是一个回话过程,关闭浏览器后消失,session为一个回话,当页面不同即使是同一页面打开两次,被视为同一次回话) localStorage:localStorage 在所有同源窗口中都是共享的

92620

WebSocket和Socket的区别,你真的知道吗?

在WebSocket中,只需要服务器和浏览器通过HTTP协议进行一个握手的动作,然后单独建立一条TCP的通信通道进行数据的传送。...WebSocket与Socket的关系 Socket其实并不是一个协议,而是为了方便使用TCP或UDP而抽象出来的一层,是位于应用层和传输控制层之间的一组接口。...HTML5与WebSocket的关系 WebSocket API 是 HTML5 标准的一部分, 但这并不代表 WebSocket 一定要用在 HTML 中,或者只能在基于浏览器的应用程序中使用。...参数 closeReason 可封装更多细节,如为什么一个 WebSocket 连接关闭。...基本上已经在各个主流浏览器厂商中实现了统一, 因此使用标准 HTML5 定义的 WebSocket 客户端的 JavaScript API 即可,当然可以使用业界满足 WebSocket 标准规范的开源框架

7.9K21

SSE(Server-Sent Events):替代websocket完成服务器推送

草案的不断完善,越来越多的现代浏览器开始全面支持WebSocket技术了,它将TCP的Socket(套接字)应用在了webpage上,从而使通信双方建立起一个保持在活动状态连接通道。...无需发送 GET 消息并等待服务器响应,客户端只需监听该套接字,接收服务器更新,并使用收到的数据来发起或支持各种交互。 客户端可以使用套接字与服务器通信,例如在成功收到更新时发送 ACK 消息。...几乎所有现代浏览器都支持 WebSocket 协议,包括移动浏览器。然而Microsoft IE 和 Edge不支持SSE 但这并不妨碍我们使用SSE,毕竟用IE的人还有几个呢?...如果是内部使用为什么使用更简单的SSE呢?...2.1 配置 在Springboot项目中使用SSE,是不需要额外引入依赖的,只需要把spring-boot-starter-web引入即可。不需要额外的配置。

3.7K20

学习WebSocket

这些场景,都需要 服务器能主动实时的给浏览器或客户端推送消息,注意关键词是主动,还有实时!而在HTML5一统江湖之前,由于HTTP在推送场景下的"薄弱",我们需要借助一些复杂或者非标准的手段来实现。...在这种方案下,浏览器需要不断的向服务器发出请求,问题是比较明显的,包括: HTTP 请求头部会浪费一些带宽 频繁重建连接会造成很大的开销... 第二种是 Comet,这个词好像翻译为"彗星"?...最开始 WebSocket 协议由 RFC6455 定义,其 API 标准包含于 HTML5 范畴之中。 目前各大主流浏览器已经能完全支持该技术。然后可以看看下面这个图: ?...如上图,WebSocket 协议中, 浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。...可能你看完前面的东西会觉得 WebSocket 是如此之强大,以至于很多场景都应该使用这个技术来实现。那么如何做?

1.3K10

350页前端校招面试题直击大厂:前端基础、前端核心、计算机基础、项目、Hr面…「建议收藏」

前言 考虑到关注的小伙伴们会有在校生或应届生,要参加校招的同学,一直挺想总结一些关于校招面试题,赶在春招结束前终于写完了,除了写到前端方面的面试题外,项目、职业发展、H面等高频问题会有,写的很详细,...5.你做的网页在哪些浏览器测试过,这些浏览器的内核分别是什么? 6.每个HTML文件里开头都有个很重要的东西,Doctype,知道这是干什么的吗? 7.说说你对HTML5认识?...(优先级、计算特殊值) 4.要动态改变层中内容可以使用的方法? 5.常见浏览器兼容性问题与解决方案? 6.列出display的值并说明他们的作用?...TCP和UDP的区别,为什么三次握手四次挥手 8.HTTP缓存机制 算法与数据结构 1.二叉树层序遍历 2.B树的特性,B树和B+树的区别 3.尾递归 4.如何写一个大数阶乘?...7.前端的项目如何进行优化,移动端呢 8.项目中使用了iframe,说说iframe的优缺点 职业发展 1.介绍一下前端的学习经历 2.作为一个专业的前端,你觉得应该掌握哪些知识 3.什么时候接触前端

49220

补习系列(20)-大话WebSocket与尬聊的实现

这些场景,都需要 服务器能主动实时的给浏览器或客户端推送消息,注意关键词是主动,还有实时!而在HTML5一统江湖之前,由于HTTP在推送场景下的"薄弱",我们需要借助一些复杂或者非标准的手段来实现。...在这种方案下,浏览器需要不断的向服务器发出请求,问题是比较明显的,包括: HTTP 请求头部会浪费一些带宽 频繁重建连接会造成很大的开销... 第二种是 Comet,这个词好像翻译为"彗星"?...最开始 WebSocket 协议由 RFC6455 定义,其 API 标准包含于 HTML5 范畴之中。 目前各大主流浏览器已经能完全支持该技术。然后可以看看下面这个图: ?...如上图,WebSocket 协议中, 浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。...可能你看完前面的东西会觉得 WebSocket 是如此之强大,以至于很多场景都应该使用这个技术来实现。那么如何做?

80150

RTSP为什么常用于安防监控摄像头行业,而视频直播却只使用RTMP推流?

RTSP协议的工作方式是通过建立一个控制连接进行控制消息的传输,该连接可以使用TCP或UDP。客户端和服务器之间通过RTSP协议交换控制命令和状态信息,以协调流媒体的传输和播放。...RTSP使用TCP来进行控制信令的传输,而多媒体数据则使用RTP协议进行UDP传输;RTMP则将控制信令和多媒体数据都封装在同一个TCP应用层协议中,因此RTMP可以利用TCP特性进行丢包补偿,而RTSP...RTSP为什么常用于安防监控摄像头行业 RTSP是常常应用于安防监控摄像头,其他领域基本很少使用。...为什么直播都使用RTMP协议推流,而不用RTSP或者webrtc 直播行业选择使用RTMP协议推流的原因有几个: RTMP协议具有较低的延迟。...目前各种终端设备和浏览器都能够支持RTMP协议,这使得使用RTMP协议可以覆盖更广泛的用户群体。 RTMP协议支持丰富的功能。

2.6K10

【综合篇】浏览器的工作原理:浏览器幕后揭秘

换句话说,它是典型的浏览器/服务器架构的产物。 为什么要学习Web应用程序​ Web应用程序开发,是目前软件开发领域的三大方向之一。...浏览器的主要功能是向服务器发出请求,在浏览器窗口中展示您选择的网络资源。这里所说的资源一般是指 HTML 文档,可以是 PDF、图片或其他的类型。...仅打开了1个页面,为什么有4个进程 因为打开1个页面至少需要1个网络进程、1个浏览器进程、1个GPU进程以及1个渲染进程,共4个。...UDP负责把数据包送达具体应用。 TCP保证了数据完整地传输,它的连接可分为三个阶段:建立连接、传输数据和断开连接。...1、DNS缓存 2、页面资源缓存 为了解决UDP数据包传输过程容易丢失,引入TCP。 TCP: 把数据完整地送达应用程序,是一种面向连接的、可靠的、基于字节流的传输层通信协议。

76110

http3将使用udp? http新闻

它还提供了一个标准的JavaScript客户端API,名为EventSource,在大多数现代浏览器中实现,作为W3C的HTML5标准的一部分。...在尝试使用HTTP / 2时,我们看到浏览器使用单个多路复用连接,加载时间要快得多。 现在我们已经了解了多路复用的全部内容,我们必须记住SSE是基于HTTP的。.../ 为站点和服务获得HTTP / 2的性能和安全性优势意味着进行体系结构更改,因为它颠覆了用于提高网站性能的分片等原则; 这可能就是为什么只有大约35%的网站目前使用HTTP / 2。...如果将多个请求复用到单个TCP连接上,则所有这些请求都必须停止并等待,即使丢失的数据包可能只影响其中一个。...“ 当用户访问站点时,他们的初始连接将通过HTTP或HTTP / 2,服务器将提供HTTP / 3作为替代; 了解提供该连接的标头的浏览器将记住它以供下次访问,但较旧的浏览器和设备将继续使用旧协议。

5.1K30

前端高频面试题(四)(附答案)

说一下data为什么是一个函数而不是一个对象?JavaScript中的对象是引用类型的数据,当多个实例引用同一个对象时,只要一个实例对这个对象进行操作,其他实例中的数据会发生变化。...,这样就能够阻止非法获取其他网站的Cookie每个域名下Cookie的数量不能超过20个,每个Cookie的大小不能超过4kb有安全问题,如果Cookie被拦截了,那就可获得session的所有信息,即使加密于事无补...还有网站的一些不常变动的个人信息等可以存储在本地的LocalStorage中(3)SessionStorageSessionStorage和LocalStorage都是在HTML5才提出来的存储方案,...它的特点如下:1)面向无连接首先 UDP 是不需要和 TCP一样在发送数据前进行三次握手建立连接的,想发数据就可以开始发送了。并且只是数据报文的搬运工,不会对数据报文进行任何拆分和拼接操作。...即使网络条件不好,不会对发送速率进行调整。这样实现的弊端就是在网络条件不好的情况下可能会导致丢包,但是优点很明显,在某些实时性要求高的场景(比如电话会议)就需要使用 UDP 而不是 TCP。

60140
领券