面试随笔1(记录题目)

30 篇文章 0 订阅
14 篇文章 0 订阅

鉴于前面几次面试均是以失败告终;发现我面试准备的并不好,一个面试可以占到一个工作招聘的成功的百分的四五十;

我也发现了,看面经固然是好的,
可是看到一个题,觉得自己会了,就大意的跳过,这是我大多时候的情况;

可实际上我真的会了吗,我只不过是走吗观花而已,不过是自欺欺人罢了,不会的依旧还是不会,我发现了,总有自己思考的东西才是自己的东西,
还是需要在脑子中过了一遍,效果会好很多,所以,

以后尽量看面经的时候,先把题目自己抽离出来,相当于自己考试,
在使用笔去写,这样的记忆才是最牢固的;

所以,以后只记录面试题目了,答案自己去思考,探索吧
加油


html/css

  • 用html+CSS实现这样的布局效果,左栏固定宽度,右栏宽度自适应并填满剩下空间。
  • 说说<strong>标签和<b>标签的区别,如果让你选择,你会选择使用哪个?
  • 说说你对对html标签语义化的理解。

js

  • JS是如何实现继承的?
  • object的prototype是什么?(接上一个问题)
  • JS如何实现数据以及功能的封装。(即类是如何实现的)
  • 如果一个标签里面包含了10000个image,如何有效地对这10000个image实现事件绑定,比如说click事件。(考察事件冒泡机制)
  • 假设现在有对象A、B,A对象绑定了S事件,如何对B对象也绑定S事件?(其实不清楚)
  • 如何实现跨域请求?你知道的有多少种方法?各有什么优缺点?
  • 当使用隐藏框架实现跨域请求时,如果框架页跟当前页不属于同个父域,是否可以实现跨域?
  • 如何实现私有变量?说出一种方法即可。
  • 函数闭包使用得多吗?什么情况下需要使用函数闭包?
  • 当某个事件发生时,如果获得事件发生的对象。(ff和ie不同)
  • 当绑定事件时,this指针指向的是?
  • 当为document绑定事件时,this指针指向的是?
  • 发送ajax请求有多少个步骤?如何判定发送成功?(readyState和onreadystatechange)
  • 表示请求成功返回的状态码是多少?你还知道哪些状态码?分别表示什么意思?

Vue


HTML & CSS 部分

css常用布局
这个在面试上市公司和创业公司问的比较多。大概我会回答一些盒模型包括怪异盒模型,定位布局,流布局,浮动布局,flex和grid布局,包括还有三栏布局中的圣杯和双飞翼。这些都还比较熟悉,所以问到都还知道。其中flex布局问的比较多,阿里的交叉面还有别的公司有问到子元素的一些属性。

BFC

居中问题

session、cookie、sessionStorage、localStorage等区别
大概就是说了下中间的区别,还有会简单说下cookie的属性,以及一些前端安全方面

px/em/rem的区别
大概说了下相对于父元素还是文档来确定大小之类的。

animation和transiton的相关属性

css编写注意事项
大概说了下自己编码中的方式,和浏览器查抄的过程。

css和HTML 问的的确都不是很多,然后还有什么标签,meta和media啥的,大概也就介绍了下,问的都不是很深,我也没有回答的很深。。。

JavaScript部分

JavaScript数据类型分哪些
比如css画三角形之类的。别说,之前没准备,还真的忘记了border怎么设置出现直角三角形还是等腰三角形。

JavaScript闭包
这个应该问的都比较多,我之前总结过,以及常用的场景,也结合es6谈了下作用域和单例模式谈了下

前端跨域
一般方式我都知道,具体展开会把CORS跨域,heade信息字段都说了一遍。也不难

JavaScript继承
这个我之前也总结过相关文章,网易的一面第二个面试官问了,我大概从原型继承、构造函数继承、组合继承、寄生组合继承优缺点和实现方式都说了下,还有es6的实现方式。一般这样就回答差不多了。后来网易还接着问,es5如何实现super关键字。看过babel转换后代码,但是这个。。真的忘记看了。大概说了下自己的实现思路,也就是装饰着模式。然后也就浑过这题了。

JavaScript的节流和防抖
滴滴一面问到了,阿里交叉面的时候聊业务场景的时候,也有问到。之前看过文章,自己项目中也用过,所以大概知道些

JavaScript的事件
阿里交叉面问到的js事件执行机制。我大概谈了下event loop,microtask,task queue。然后事件委托、捕获、冒泡、目标阶段大概谈了下,也顺道谈了下target和currentTarget。

ajax请求方式
因该算是考察基础功吧,谈了下XMLHTTPRequest的过程,readyState的几种类型和代表的意思。以及浏览器兼容性的处理方案。

js判断数据类型的方法
貌似有两家公司问到,大概说了下typeof、instanceof、constructor、prototype等判断方式,注意事项以及优缺点。应该回答的还可以

函数声明和变量声明
这个大概我也知道,还说了下es6的相关东西

this指向的问题
这个我也总结相关文章,大概说了下四种绑定规则,还说下new的执行过程以及箭头函数注意事项

面向对象的理解 滴滴一面问的,大概说了下理解以及实现,从封装、继承和多态上说了下es5和es6的实现方式

对于js这门语言你认为怎么样

哇,这个问题问的真的大。有看过《JavaScript语言精粹》,大概说了哪些弱类型语言通病,因为之前搞过Java,所以综合对比了下,同时也说了这些诟病怎么解决。应该会的面试官还是挺满意的

es6相关知识点

这个应该回答的都不是很深入,大概我都用过,promise的实现方式也研究过,但是不记得哪一家公司问到generator的怎么实现的。大概从iterator上简单说了自己的方案,然后说没看过。然后对于别的其实问的不是很多。基本套路就是es6了解过吗?用过哪些语法。后面具体可能会说下哪一个新特性的实现方式或者转向babel、webpack的相关面试。

React部分

react部分必考的肯定有生命周期
这里我大概说了下每一个生命周期,es5、es6的两种书写方式,以及每一个生命周期我们一般用来做些什么操作

setState是异步的还是同步的
阿里一面的时候问到的,我大概说了两种setState设置方式,以及表现为同步的那种设置方式展开说了下

子组件和父组件componentDidMount哪一个先执行
这个也大概从生命周期分期了下。话说我到现在还不知道自己回答的对不对,技友们,你们觉得呢?

redux的一般流程
这个我比较熟悉,一带说了下所有的技术栈,以及react-redux的原理、高阶组件、以及redux-saga的实现原理。(逮住会的,都啪啪啪说出来,自己掌握点节奏。但是要适当,比如问到我es6,我啦啦啦说了一二十分钟,一般面试官会有点不耐烦。所以视情况而定)

如何设计一些组件,原则是什么,你写过什么自豪或者眼前一亮的组件
阿里一面以及一家上市公司也闻到过这类似的问题,大概从组合、复用、重复、测试、维护等方面说了下

a组件在b组件内,c组件在a组件内,如何让他渲染出来,a组件和c组件同级
阿里面试的时候问到的问题,想了一会,说了不会。后来查了下,大概可以通过react16中返回不带包裹元素的组件来实现。因为和阿里一面面试官后来聊得比较开心,加了微信,还斗胆为了下他,他说还有曲线救国的实现方式

react组件的优化
从pureRenderMixin、ShouldComponentUpdate等方面说了下,以及组件的设计和木偶组建的函数编写方式说了下

react组件的通信
这个大搞几种方式也都说了下,prop,context(顺道扯了react-redux的context实现方式)、redux甚至广播都说了一遍

react 的virtual dom和diff算法的实现方式
阿里交叉面问的,直接说实现方式源码没有看过,但是大概说了下原理和步骤,具体代码怎么写的不知道。

MVC、MVVM了解么,数据双向绑定和单向绑定实现方式
滴滴一面问的,实现方式还是说了不知道,然后说了下MVC和MVVM的设计模式,因为之前用过angular1,大概就说下脏检查步骤以及view-model的作用

react-router实现方式,单页面应用相关东西
大概说了下react-router的一般使用方式,以及没有使用react-router的时候如何利用h5 的history API来实现路由跳转等。

react的ssr了解么?大概怎么实现
阿里的一面问的,在github上写过demo,但是没有用过别的第三方库,这里我就大概说了下webpack的配置项以及大概的实现思路和注意事项。

react大概也就问了这么写,别的就是具体的业务场景改怎么写代码怎么分析,比较不大众,这里我就我细说了。其实也就考验你的项目经验吧。当然,还有一些react Native的面试题,比如常用组件,和原生如何通信之类的,这些就有赞问的多,但是因为RN玩的不是很透彻,所以对于交互原理都不是很明白。
浏览器

http三次握手后拿到HTML,浏览器怎么加载
阿里的一面问的问题,这个我之前在环球做过相关技术分享,所以大概都知道,从过程到不同内核差异(差异部分简单提了下)说了下dom、CSSDom以及paint等过程。然后面试官接着问如何防止repaint和reflow。大概从引起repaint和reflow等操作上说了下避免。网易的一面也问到了repaint和reflow。

前端优化一般都做哪些
这个之前总结过,雅虎的军规啥的。以及首屏优化。然后面试跟了些预加载http head信息相关的,这个没怎么看,回答的不是很好

浏览器缓存
这个我也做了相关的技术分享,也看过《图解http》大概从http 1.0和1.1都说了下,其中有一家公司问到200 From cache和200 ok区别(有赞),这个还真的忽略了,后来查了下大概了解了。其实也就是强缓存

http常见状态码
从100~500 大概也说了十几种。其实也就是《图解http》中的东西,当时还刻意背了下

http2.0相关
网易一面问题,说了下2.0的采用二进制格式、多路复用、报文头压缩、服务器主动推送还扯了websocket的相关内容WebSocket:5分钟从入门到精通。然后网易接着问,报文头怎么压缩的?我。。。??不知道。。。然后大概也问了下https的TLS/SSL,之前看过漫画的htts的相关东西,大概说了下漫画里面的故事~

post、get区别
这个回答的不是很好,也是一个大厂问的题目,我回答的都是表象。后来我看了一篇文章,大概知道了。99%的人都理解错了HTTP中GET与POST的区别

别的我也不记得了,回头想起来在来补充吧
构建工具

编写过webpack的扩展嘛,Plugin或者loader
这个我看过一本书《深入浅出webpack》,所以基本都能回答上来。包括原理和编写loader、Plugin注意事项。当然,我自己没有写过。。。《深入浅出webpack》

babel 问的不多,但是我也准备了,包括每一个包的作用和内部转换过程,不记得哪家公司问了,大概我也就说了下babel转换的过程。
结束语

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值