![7.25百度秋招提前批前端一面,已共享](https://imgs.xnip.cn/cj/jy2/2023-07-26/316d61db-82b3-4b3b-8f05-663499a0e244.jpg)
实在是克服不了一回答问题边思考边emmmm的臭毛病,导致面试时候看起来不自信!!!!!发誓一定要逐渐克服这个坏习惯!!!!
进入正题:
先自我介绍,让介绍一下项目经历
问了为什么选择前端
问了css尺寸单位
细问了rem,怎么和px进行换算,移动端使用rem怎么根据不同尺寸大小调整html的font-size问有几种方法(没回答上来,脑子短路根本没理解到底要怎么回答),面试官说一种是通过js获取宽高来计算,又说这种方法也有缺点,这时候引出来一个问题,问浏览器对html css js执行顺序是什么,回答完面试官说对因为js执行滞后导致页面在第一次渲染时可能会出现字体大小抖动;又说了还可以采用媒体查询,让我介绍一下媒体查询原理,面试官补充了媒体查询方法的缺点是不可能对所有尺寸都进行规定
问了怎么实现一个弹窗让其在页面上方,且水平垂直居中。根据这个问题引申出来position的absolute/fixed/relatice/sticky区别
问了封装一个搜索组件,左边是搜索框根据尺寸变化,右边按钮宽度固定,问布局怎么实现。回答的用display: flex,让左边flex:1,然后他就自己自言自语说行,其他的实现方法就先不说了,然后又问了那输入框中会根据用户输入关键字进行联想,那要每次输入变化都向后端发起请求么,怎么优化。回答封装一个防抖函数,他让我写一下,但是会议里面那个功能没弹出来就作罢,让我大致描述一下。根据这个问题问了防抖和节流的区别。听完我描述防抖函数后问我为什么返回值要返回一个函数,我说这个函数是个闭包,问我闭包会出现什么问题,我说可能会存在内存泄漏问题,问我怎么解决,怎么避免出现这个问题,都没回答上来,理解的比较表面,知识点还需要多巩固且深入。
问了除了call,apply还有什么能改变this指向,我说还有bind,让我介绍一下bind和call aplly区别
问除了这仨还有什么能改变this指向,我说我目前就是知道这仨
又问普通函数和箭头函数区别
问了Vue3相对Vue2的区别,根据回答的其中一条响应式原理不同,问我为什么Vue3采用Proxy
回答完这个问题后面试官给了总结,第一点是把css一些样式实现再巩固,可以看看一些组件库是如何封装模态框的,第二点告诉我要更自信