前端面试总结

原文地址:Something about Interview

今天来整理一下关于面试的一些内容。

首先有些东西想说一下,我觉得。。。

很多人都说前端工程师门槛低,谁都能学,谁都能入行,一开始我觉得,嗯嗯。。(怪我太天真)

作为一个已经转行互联网一年多的普通一本大三学生,我发现,有些计算机专业知识是必不可少的,例如:数据结构,算法,计算机组成原理,计算机网络这些东西,这些东西都是属于内功部分,而且在笔试的的时候深有体会,特别是不会数据结构和算法很吃亏。如果想走的更远,这些东西如果不学,始终会有一天成为自己发展的绊脚石。所以趁着有时间,我觉得有必要投入足够的时间,去补计算机专业知识。

再者,要成为一个Competent FE,JavaScript(目前来说是ES6),CSS(CSS3),html(h5),这些,都是很重要的。如果想找到工作,也是必须要有牢固的基础。

那么我就简单列一下面试遇到的各种问题。

html CSS

-js版本实现快排,优化。

  • overflow问题

  • em和rem和px

  • bfc原理

  • 弹性盒子问题, flex布局

  • 绝对定位和相对定位

  • 让一个不知道尺寸的元素居中。

JavaScript

  • 深度克隆。

  • 数组去重所有方法,如果里面有function怎么办?

  • 对象的遍历。(hasOwnproperty,for。。。in区别)

  • 对象的方法。(能说少说多少)

  • 作用域相关知识(ES5中的理解,和Es6中的理解,最好都说一下)

  • 箭头函数

  • 懒加载

  • 声明提升问题(ES5和ES6中的各种区别)

  • 事件委托机制的原理(这里可以展开讲,1000万个li,逐一绑定使用事件委托)

  • Object.assign方法

  • break对forEach的影响。会不会终止forEach循环?

  • js中的对象属于什么数据结构?

  • 原生实现call apply new

  • ES6 中的set

  • ES6中的继承(class)

  • 设计模式,策略模式,观察者模式

  • 判断数组和对象的方法(典型的有三种,toString,instanceof,constructor)

  • this的指向问题

  • class和prototype的区别,prototype和proto 的区别

网络

  • 手动封装一个ajax

  • 手写一个jsonp

  • jsonp和ajax的区别

  • 跨域相关问题(方法,区别)

  • 输入一个URL,发生了什么事情?

  • 手写解析URL参数

  • 网络协议,各种网络协议分别属于什么层?

  • http和https长连接

  • 请求报文heade常用字段

  • 状态码403和500 分别代表什么

  • get和post的区别

框架和库其他

  • zepto和jQuery事件委托的区别?

  • webpack的有什么用

  • vue和vuex的区别

  • onload和onready的区别

  • vue是怎样实现双向绑定的?

  • react的生命周期

计算机相关知识

  • 服务端变成怎样提高效率

  • 操作系统的功能

  • 寄存器存的是什么的。

  • js中的对象属于什么数据结构?

  • 链表和数组的区别

  • 排序有哪些(你会的),快排的原理

  • 数据库的常用方法

  • 操作系统 线程有什么状态

  • js的线程机制

  • 求二叉树的深度

那么相关的内容就讲到这,希望大家都能拿到好offer。

PS:以上内容是我总结师兄师姐的,本人还在沉淀中。。。修炼中。。。蓄力中。。。

我的博客:leunggabou.com 欢迎批评

#前端工程师#
全部评论
赞一个
点赞 回复 分享
发布于 2017-09-23 15:49
最好添加下node基础→_→
点赞 回复 分享
发布于 2017-09-23 08:43
先标记一下
点赞 回复 分享
发布于 2017-09-22 21:25
很详细。建议博客把友言换成Gitment,更简洁更美丽
点赞 回复 分享
发布于 2017-09-22 21:03
赞一个
点赞 回复 分享
发布于 2017-09-22 20:48

相关推荐

刘湘_passion:出国旅游?那就小心你的腰子咯
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
9
132
分享

创作者周榜

更多
牛客网
牛客企业服务