浏览器
文章平均质量分 73
神奇大叔
这个作者很懒,什么都没留下…
展开
-
v8 JIT 即时编译
v8 即时编译原创 2023-07-06 14:49:31 · 390 阅读 · 0 评论 -
v8 隐藏类
隐藏类的主要目的是优化对象属性访问和存储,降低计算成本。原创 2023-07-04 11:20:56 · 323 阅读 · 0 评论 -
v8 数组的降级策略和内存优化
v8引擎中,js数组的内部类型有很多模式。原创 2022-05-18 22:15:09 · 394 阅读 · 0 评论 -
前端优化 浏览器预处理相关优化
当你浏览网页时,浏览器会在加载网页时对网页中的域名进行解析缓存,这样在你单击当前网页中的连接时就无需进行DNS 的解析,减少用户等待时间,提高用户体验。 其中Chrome和Firefox3.5+内置了DNS Prefetching技术并对DNS预解析做了相应优化设置。使用: dns-Prefetch 应该尽量的放在网页的前面,推荐放在 <meta charset="UTF-8"> 后面。具体使用方法如下: <link rel=”dns-prefetch” href=”url地址”原创 2021-02-20 15:34:21 · 959 阅读 · 0 评论 -
浏览器 偏移量、尺寸、视口大小
获取浏览器视图窗口的宽高 不包括滚动条 .clientWidth .clientHeight 包括滚动条 window.innerWidth window.innerHeight 获取html元素的宽高 .offSetWidth .offsetHeight 相对偏移(父元素得定位,否则会找距离最近的定位高级元素) .offs...原创 2019-11-25 23:52:15 · 506 阅读 · 2 评论 -
前端新特性
优先级提示是对现有浏览器资源加载优先级的补充。当以上因素对资源优先级控制的精细度不够时,就需要用到Priority Hints。原创 2022-08-31 10:07:25 · 1023 阅读 · 0 评论 -
chrome 调试技巧
代码】chrome调试技巧。原创 2022-07-19 00:02:37 · 422 阅读 · 0 评论 -
图片类型解析
【代码】图片类型解析。原创 2022-07-13 23:57:57 · 1839 阅读 · 0 评论 -
浏览器任务调度机制
单消息队列的队头阻塞问题引入高优先级队列下面几种任务都应该视为高优先级的任务:增加一个高优级的消息队列,将高优先级的任务都添加到这个队列里面,然后优先执行该消息队列中的任务。根据消息类型来实现消息队列动态调度优先级避免任务饿死...原创 2022-07-11 23:11:04 · 342 阅读 · 0 评论 -
浏览器 跨域传输数据、标签页传输数据
同源策略:当然同源策略限制也不是绝对隔离不同源的站点,比如link、img、script标签都没有跨域限制,这让我们开发更灵活了CORS跨域简单请求:浏览器直接发出CORS请求。具体来说,就是在头信息之中,增加一个Origin字段如果Origin指定的源,不在许可范围内,服务器会返回一个正常的HTTP回应。浏览器发现,这个回应的头信息没有包含Access-Control-Allow-Origin字段,就知道出错了,从而抛出一个错误,被XMLHttpRequest的onerror回调函数捕获。注意,这种原创 2022-06-23 15:42:30 · 1190 阅读 · 0 评论 -
浏览器渲染页面
这些块的大小一般不会特别大,通常是256*256或者512*512这个规格。这样可以大大加速页面的首屏展示。现这种裁剪情况的时候,渲染引擎会为文字部分单独创建一个层,如果出现滚动条,滚动条也会被提升为单独的层。为了解决这些问题,就需要将显示器的时钟同步周期和浏览器生成页面的周期绑定起来。合成线程会将图层划分为图块(tile)......原创 2022-06-15 09:51:42 · 338 阅读 · 1 评论 -
线程中的协程
协程是一种比线程更加轻量级的存在,协程处在线程的环境中,一个线程可以存在多个协程,可以将协程理解为线程中的一个个任务。不像进程和线程,协程并不受操作系统的管理,而是被具体的应用程序代码所控制。因此并没有进程/线程上下文切换的开销,这是高性能的重要原因。协程的运作过程协程案例原创 2022-06-02 13:23:06 · 849 阅读 · 0 评论 -
浏览器安全沙箱
浏览器漏洞危害通过浏览器漏洞进行攻击是可以侵入到浏览器进程内部,可以读取和修改浏览器进程内部的任意内容,还可以穿透浏览器,在用户的操作系统上悄悄地安装恶意软件、监听用户键盘输入信息以及读取用户硬盘上的文件内容 。侵入浏览器进程无疑是毁灭性的攻击,他会将整个操作系统暴露给黑客。浏览器多进程架构将渲染进程和浏览器主进程做了分离。浏览器被分为渲染进程和浏览器内核,浏览器内核包含浏览器主进程、网络进程、GPU进程等。所有的网络资源都是通过浏览器内核来下载的,下载后的资源会通过 IPC 将其提交给渲原创 2022-05-13 15:00:02 · 841 阅读 · 0 评论 -
浏览器数据库 indexDB、webSQL
webSQL关系型数据库存在兼容性问题,ie和火狐均不支持。indexDB非关系型数据库:主要特点键值对储存IndexedDB 内部采用对象仓库(object store)存放数据。所有类型的数据都可以直接存入,包括 JavaScript 对象。对象仓库中,数据以"键值对"的形式保存,每一个数据记录都有对应的主键,主键是独一无二的,不能有重复,否则会抛出一个错误。异步 IndexedDB 操作时不会锁死浏览器,用户依然可以进行其他操作,这与 LocalStorage 形成对比,后者的操作是原创 2022-03-21 21:39:00 · 5568 阅读 · 0 评论 -
网络攻击 XSS、CSRF 攻击等
同源策略:同源指的是我们访问站点的:协议、域名、端口号必须一至,才叫同源。浏览器默认同源之间的站点是可以相互访问资源和操作DOM的,而不同源之间想要互相访问资源或者操作DOM,那就需要加一些安全策略的限制,俗称同源策略同源策略主要限制了三个方面:DOM层面:不同源站点之间不能相互访问和操作DOM数据层面:不能获取不同源站点的Cookie、LocalStorage、indexDB等数据网络层面:不能通过XMLHttpRequest向不同源站点发送请求当然同源策略限制也不是绝对隔离不同源的站点原创 2021-12-15 16:11:08 · 2703 阅读 · 0 评论 -
浏览器进程和线程
进程:当我们启动某个程序时,操作系统会给该程序创建一块内存(当程序关闭时,该内存空间就会被回收),用来存放代码、运行中的数据和一个执行任务的主线程,这样的一个运行环境就叫进程线程:而线程是依附于进程的,在进程中使用多线程并行处理能提升运算效率,进程将任务分成很多细小的任务,再创建多个线程,在里面并行分别执行进程和线程的关系进程与进程之间完全隔离,互不干扰,一个进程崩溃不会影响其他进程,避免一个进程出错影响整个程序进程与进程之间需要传递某些数据的话,就需要通过进程通信管道IPC来传递一个进程中可以原创 2021-12-14 18:56:34 · 892 阅读 · 0 评论 -
hash、history路由
在Web前端单页应用SPA(Single Page Application)中,路由描述的是URL与UI之间的映射关系,这种映射是单向的,即URL变化引起UI更新(无需以及不会刷新页面)具体应用: Vue等前端路由的实现 组件功能: 页面上监听浏览器前进后退操作,使得类似左侧点击列表,回退到上一个选中的列表,而非回退页面弊端: 因为改变的url是自定义的,并不是服务器上真实存在的路径,所以调用浏览器刷新时,页面会报404的错误hash路由 hash是URL中hash(#)及后面的原创 2021-12-10 14:44:31 · 1504 阅读 · 0 评论