合集

1.vue实现一个对话框?用到什么技术?如果没有遮罩层,点击空白处关闭对话框怎么处理?

在最外层绑定一个点击事件

    pint(e) {
      let dom = document.getElementById('printcontent')
      if (dom) {
        if (!dom.contains(e.target)) {
          //e.target可返回事件的目标节点(触发该事件的节点),然后做判断
          console.log('点到外面了')
        } else if (dom.contains(e.target)) {
          console.log('点到里面了')
        }
      }
    }

2.首次加载白屏怎么优化?

前端角度(优化打包文件大小)

1.懒加载

2.aot模式打包

3.服务端开启gzip压缩

4.cdn缓存图片

5.骨架屏(用户体验角度)

Angular4首页加载慢优化之路

3.单页面应用同一个url地址指向不同资源怎么实现?

路由:

 目前来说,无论是vue,还是react,spa的路由实现方式无非就是以下两者:

  • hash方式。 使用location.hash和hashchange事件实现路由。 
  • history api。使用html5的history api实现,主要就是popState事件等。

  hash用的还是比较多的,但是这种方式的url会比较丑陋,会出现 #; 而history api就可以很好的解决这个问题,但是需要后端配置,并且由于是html5中的api,所以兼容性还不是很好,用的时候需要确定你的用户,再做决定。

1.hash路由在地址栏URL上有#,而history路由没有会好看一点

2.我们进行回车刷新操作,hash路由会加载到地址栏对应的页面,而history路由一般就404报错了(刷新是网络请求,没有后端准备时会报错)。

3.hash路由支持低版本的浏览器,而history路由是HTML5新增的API。

4.hash的特点在于它虽然出现在了URL中,但是不包括在http请求中,所以对于后端是没有一点影响的,所以改变hash不会重新加载页面,所以这也是单页面应用的必备。

5.history运用了浏览器的历史记录栈,之前有back,forward,go方法,之后在HTML5中新增了pushState()和replaceState()方法(需要特定浏览器的支持),它们提供了对历史记录进行修改的功能,不过在进行修改时,虽然改变了当前的URL,但是浏览器不会马上向后端发送请求。

深入理解前端中的 hash 和 history 路由

4.浏览器中存储对象有哪些?

Cookie

LocalStorage

SessionStorage

IndexedDB

 

1.Cookie的本质工作并不是本地存储,而是状态维持。

2.WebStorage是HTML5专门为浏览器存储而提供的数据存储机制,不与服务端发生通信。

3.IndexedDB用于客户端存储大量结构化的数据。

浏览器提供的几种存储

5.浏览器的cookie读写机制?

Cookie的生成方式主要有以下两种:

1.http response header中的set-cookie。

2.js中通过document.cookie读写cookie,可以将cookie解析为键值对的形式展示。

深入浅出谈Cookie

6.简单说一下自己了解的设计模式?

模式分类名称
创建型工厂模式
单例模式
原型模式
结构型适配器模式
代理模式
行为型策略模式
迭代器模式
观察者模式(发布-订阅模式)
命令模式
状态模式

JavaScript常用设计模式

前端需要了解的9种设计模式

7.项目中使用过proxy吗?

你不知道的 Proxy

8.跨域有哪些实现方式?

九种跨域方式实现原理(完整版)

9.简单说下浏览器实现跨域的过程?

浏览器和服务器实现跨域(CORS)判定的原理

JavaScript 跨域原理

10. 对微前端有过了解吗?

 

11.嵌入其他系统的实现方式?

 

12.iframe发主程序通讯方式?

 

13.webpack你是怎么用的?

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值