关于浏览器的面试考点

1.sop 同源策略机制


指浏览器的当前页面与接口两方必须同协议,同域名,同端口。有一个不相同都会受到浏览器的约束。
在部分场景中,我们为了避免性能,需要请求不同接口资源,此为跨域。


2.跨域


解决1.jsonp 通过script标签进行请求 但只能为get
解决2.cors 让接口资源进行授权,在接口资源处添加对应响应头Access-Control-Allow-Origin:'*'
解决3.proxy 代理 将请求发送到自己的服务器 由服务器请求接口


3.浏览器缓存


  为了减少消耗不必要的性能资源,减少加载时间,提高用户体验。
    1.强缓存
      客户端第二次请求相同资源时,不会再次请求而是直接从内存/硬盘取出。
    2.协商缓存
   二次请求时,向服务器询问是否更改本地缓存,如果不更改则读取,更改则更新。


4.haslayout


是Windows Internet explorer渲染引擎的一个组成部分
常见属性 min-height系列,overflow-x,overflow-y,overflow,position:fixed


6.浏览器模式


标准模式 按照w3c规定的语法渲染 显示网页
怪异模式 按照浏览器自己的方式加载
不同浏览器的加载方式不同


7.前端安全问题


   1.跨站脚本 /XSS类攻击 在网站本身注入恶意脚本
   2.iframe的滥用
   3.跨站请求伪造 /CSRF攻击 诱导用户进入第三方网站 通过获取登录状态冒充用户
   4.恶意第三方库


8.网络劫持


   1.DNS劫持 如去京东强制到淘宝 违法
           强制劫持. 通过修改运营商本地的dns记录 引导用户流量到缓存服务器
           302跳转. 通过监控网络流量来判断哪些内容可劫持,再发起302跳转引导流量。
   2.http劫持 访问谷歌但有一刀999的广告
           通常是运营商修改http响应内容 因为http明文传输
  解决  推荐使用https


9.浏览器多个标签页通信


    1.websocket协议  标签页的信息 由服务器推送到另一个页面
    2.sharrWorker 共享线程
    3.localStorage/postMessage


10.缓存过程


请求资源并缓存-强缓存命中-若强缓存资源过期(即没命中强缓存)则协商缓存


11.刷新区别


   1.点击刷新  浏览器直接对本地的缓存文件过期
   2.ctrl f5 缓存不会过期
   3.地址栏回车 正常流程 本地检查是否过期 服务器检查新鲜度 最后返回内容 


12.localStorage与sessionStorage


    他们都是本地存储 都有同源策略限制 
    但sessionStorage只能同一浏览器的同一窗口下共享 关闭标签页后销毁


13.宏任务 微任务


红任务: promise回调,nextTick 
微任务: setTimeout setInterval等定时事件


14.内存泄露


  1.使用未声明的变量而创建了全局变量 导致这个变量无法被回收
  2.设置了定时任务而忘记取消
  3.不合理的闭包
  4.获取一个dom元素 后元素被删除  但我们保留了引用 因此该dom也无法被回收

     
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值