当前位置: 首页 > 面试经验 >

9.2完美世界提前批前端一面

优质
小牛编辑
98浏览
2023-03-28

9.2完美世界提前批前端一面

下午4点开始,先自我介绍,时长1h
  1. flex布局,说的详细点,然后知道的都说了,其中flex:1 (flex-grow | flex-shrink | flex-basis)都说了,分别解释每个的含义,flex-basis我就没完全搞懂过!就一直问这个,还举了例子问一个父盒子设为display:flex,宽度1000px; 然后里面的元素分别设置flex:2 1 200px  和 flex: 3 1 300px;问布局情况,
  2. 说一下重绘与重排,什么会触发重排(常见的display:none重绘,v-if重排,节点的隐藏与显示,盒子的宽高的变化,元素的新增与删除等,会引起dom结构变化的),
  3. 又问如何减少重排的影响,重排涉及到dom结构,要减少重排次数(1、设置更新时间,一个时间段的,并把重复操作去除,nextTick的思想,2、减少影响的话,让元素脱离文档流,这样宽高改变就不会影响其他的)———》 如何脱离文档流,第一回答float(但容易影响布局,不太好),position:realative来脱离文档流
  4. 然后问JS,如何判断数组,又来了哈(instanceof、Array.isArray、Array.prototype.isPrototypeof()、Object.prototype.toString.call()),
  5. instanceof判断数组的原理,有什么风险、问题没有,我???
  6. Generator函数,先讲讲了解多少,然后口述了一个例子,问执行,输出什么,返回什么Generator对象,next,yield什么的
  7. promise的静态方法,promise的then的状态由什么决定(一般都直接执行res成功的时候,其实then里面也可以throw error 和reject输出错误的状态),
  8. promise.then里面都主要实现了什么,就是说一些这个函数内部怎么实现的
  9. 出了一个,promise输出题,
  10. 手写Promise最大并发,屏幕共享,给了一组数据,看运行时间
  11. 浏览器都有哪些进程(渲染进程、网络请求的进行。。。),渲染进程下面又有哪些线程???(真不清楚了)
  12. 说一下JS的事件循环机制,微任务、宏任务、微任务创建的微任务
  13. 同源协议,(协议,端口、域名),服务器接收到请求没有? 同源协议是浏览器这边的拦截,服务器是正常接收请求和响应的,
  14. 如果在跨域的情况下发起一个delete,浏览器这边拦截,服务器还是会照常删除?是的,但感觉不太合理,
  15. 这个不合理如何处理呢?(并不是只跨域处理哈),后来在瞎说中居然被说对了,浏览器这边,delete可以先发起预检请求,预检请求里面携带了origin,把这个origin信息就是源地址端口啥的,与服务器响应头里面的Access-Control-Allow-Origin进行比对,这样就避免了在不匹配下进行了请求响应操作。

大概就是这些了,正如面试官常说不是面试常问的问题-_-
 类似资料: