首页 > 前端面经
头像
牛客514670001号
编辑于 2020-09-28 10:57
+ 关注

前端面经

我的秋招基本上就算结束了,剩下的就是看泡在池子里的公司会不会捞我了,有合适的国企在试试,互联网是冲不动, 把记录的面经分享一下,算是回馈把,希望能收到心满意足的offer,加油

58集团

一面

自我介绍

找一个项目说自己的职责和遇到的问题

实现一个微信PC端的布局

Vue的生命周期

父子组件间的通信,兄弟组件间的通信

跨域的理解

大数值的数据加减乘除如何实现

对两个排好序的数据,找到第一个相等的数字

数据可视化的实现

对以后学习的规划

学习前端的过程

360

一面

基本数据类型与引用数据类型的区别

实现深拷贝

解释Object.prototype.toString.call()

为什么不能直接调用obj.toString,因为array对象会重写Object上的方法

Str是一个基本类型,为什么可以调用str.length的方法,当调用length时,系统会自动创建一个String对象,这样可以调用string上的任何方法

将一个str的首字母大写

name.slice(0,1).toUpperCase() + name.slice(1)

Promise的了解

Promise.all,Promise.race

一段promise的执行顺序,宏任务和微任务

防抖和节流

写一个防抖

防抖的应用

项目中的脚手架

代码热更新的原理

http协议的了解

Css相关

如何实现0.5像素的分割线(边框)

清除浮动的方法

垂直居中的方法(多种)

Echarts的应用

Canvas的原理

数据结构

冒泡排序的原理

Js的模块化,ES6的模块化,commonJS,AMD,CMD

二面

自我介绍

为什么找计算机相关工作,为什么做前端

怎么学习前端

项目中遇到的难点

项目中有几个人,自己的负责

为什么选择vue

为什么用虚拟DOM

输入网址到渲染发生了什么

页面中的内容是统一发送给客户端的,还是分块发送的

如何查看链接状态

利用F12控制台可以实现什么功能

http状态码

遇到过的http状态码

TCP与HTTP的关系

Get与post请求的区别

文件上传是get还是post请求

Cookie是什么

用过cookie吗

Cookie放在哪里

Cookie的属性

同源是什么

为什么需要同源政策

为什么需要跨域

项目中遇到的跨域,什么场景的跨域,为什么端口要不同

项目中跨域的解决方式

还有没有其他方式

http2.0与http1.1的区别,主要解决什么问题

www.baidu.com与baidu.com是同源的吗,为什么都能访问百度

贝壳

一面

自我介绍

为什么做前端

判断数组的方法

Object.prototype.toString

原型和原型链

实现继承

各种继承方式之间的优缺点

多继承?

Js的数据类型

Symbol

跨域

Cors的实现

有什么请求头

Cookie的应用、属性

同源中源的理解,域的概念

a.ke.com与b.ke.com同源吗

项目的技术栈

组件间信息共享,vuex的实现

实现一个上下高度固定,中间自实现

实现一个排序,字母在数字前排序

作用域

Const与let

Null与undefined

实现一个排序算法

面临一个问题如果解决不出来怎么办

为什么学前端

怎么学习前端

学习渠道

看过的书


二面

自我介绍

实现一个鼠标拖动函数

自己在项目上的收获,除了技术的收获

举个例子

项目团队有多少人

谁负责与现场进行交流

项目对自己的提升都有什么,举个例子

项目中遇到的技术难点

如果技术实现实现不了,要怎么解决

怎么搭建的项目

不同人的项目,如何进行管理

如果两个物理隔离的项目,如何复用

对Vue-cli的理解以及实现原理

项目现在处于什么阶段

项目是在线的吗

项目如何从本地到线上

进互联网公司想要学习的内容

了解互联网跟在学校或企业的区别

自己的职业规划

度小满

一面

自我介绍

项目中的职责,项目中遇到的问题

Vue的双向绑定

做过H5端吗

实现三列布局

Js事件的执行机制

如何理解js作用域

变量提升

暂时性死区

实现一个反转数组


二面

自我介绍

项目中的职责

项目中主要实现的功能,模块,以及难点

Vue的经典语法还是类语法?

Vue的props???

Vue中的data为什么是一个function

Vue的ssc风格的组件???

如何更好的实现一个组件的复用

Vue的template转成render

Vue的渲染过程

虚拟DOM

具体的细节,diff的实现

虚拟DOM跟真实DOM的更新是怎么做的

Vue如何实现组件的继承

如何更好的实现代码复用

Vue的混入机制

Let声明变量的好处

为什么function会变量提升,let不能变量提升

箭头函数使用时要注意什么

实现一个洗牌算法

好未来

一面

Js为什么要设计成单线程的

Java和js的优点和缺点

如何用Java实现一个弱类型语言

了解的数据结构

栈和队列的应用场景

排序算法

快排的思想

前端sort的实现原理

Js处理异步请求

发送一个请求发送了什么

http协议属于什么层

http协议与tcp的关系

Tcp协议为什么是稳定的

Tcp协议的滑动窗口

http协议如何保证安全

CDN???

进程与线程

项目相关


二面

项目中与前端相关的部分

在项目中的职责

项目的具体描述

项目的技术栈

Vue的特性

为什么要用虚拟DOM,为什么会消耗性能

双向绑定的好处

双向绑定的实现原理

对一个对象加一个属性

有没有接触过其他的框架

用过的ui库

前端路由的实现原理

除了hash地址有没有别的模式

为什么需要嵌套路由

302跳转和路由跳转

常见的http状态码

http常见的头信息

Websocket

Webpack

.vue文件如何识别html,js,style的

GzIP压缩

ZIP压缩的基本原理

压缩后数据为什么都是二进制的

学习前端的过程,学过的计算机的课程

Python与js的区别

Js的渲染引擎和主引擎的区别

Node接触过吗

做一个用户登录的功能要注意什么

如何记住用户登录


Hr面

自我介绍

遇到过什么挫折

职业规划

三个优点、一个缺点

对好未来的了解


美团

一面

自我介绍

项目的难点

前后端的通信

http请求

http请求头属性

Post与get请求区别

取消浏览器缓存

http的缓存(强缓存,协商缓存)

Post请求可以放在哪里,formData

幂等的post请求(put或delete)

http的状态码

实现一个AJAX

实现一个Promise的retry方法??

原型的作用

实现一个继承

实现一个链表反转

实现一个三列布局

Flex布局

实现一个自增函数


二面

自我介绍

项目所实现的功能(说重点)

解决的具体问题

自己的职责

遇到的问题

为什么做前端

项目中激发自己兴趣的点

前端的框架

VUE的发展史,关键的节点

如果10天的项目你要15天完成,要怎么办

20天呢

如何提高自己写程序或者代码的效率

有什么技术手段能够提升写代码或完成项目的效率

如果要改变一个上千个页面中的一个页面中的文本,如何定位到这个页面

如果这个页面与其他页面之间存在依赖,如何修改

奇安信

一面

怎么学的前端

前端工程师了解后端知识的好处

完成的项目是单页面还是多页面

对vue的自定义配置

项目基本架构的搭建

项目中遇到的困难

Vue的生命周期

用到的UI库

Vue中data为什么要是一个函数

微任务与宏任务

事件循环

JQuery

垂直居中的方法

Style中的lang

Vue的Style中的Scoped

项目中的亮点以及特殊的功能

如何定位一个前端中的页面错误

如果不能debug,即项目以及打包发布后,如何去定位一个页面中的错误

项目中一个页面出错了,如何定位到页面

防抖和节流

为什么用map(在map没出现之前,如何替代map)

如何编译一个json

Object的方法有哪些

ES6的继承

Promise

调用后端的库axios


二面

技术选型

为什么使用vue框架,vue框架与其他框架之间的一个比较

服务端为什么使用java,为什么用SSM框架

前端做的好的地方

Vuex的原理,为什么能实现组件信息共享

前端与服务端用什么通信

网络协议

Java怎么部署

可视化分析手法,数据处理算法

Js的基本数据类型

DOM对象与BOM对象

实现css的三列布局

实现一个排序算法

CSS的布局,样式,画图

输入地址后发生了什么,渲染的过程发生了什么

Webpack的作用,原理

网页的安全因素,攻击和防御

如何学习js和vue

总结,最好有博客或者git

为什么从服务端转到前端

一个优秀的前端开发工程师要具备什么技能

现在最新的分析方法,前端框架

顺丰

Vue的双向绑定

Vue的生命周期

Vue组件间信息的传递

Vuex的原理

输入一个url地址到浏览器渲染都发生了什么

事件循环

微任务和宏任务

事件流

事件代理

e.target

e.current.target

盒模型

DOM中如何获取一个元素的宽度和高度

盒子塌陷

垂直水平居中

天翼云计算

一面

自我介绍

在项目中的职责

项目中遇到的新的技术

项目中用到的库

Echarts中用到的图

对于图的优化方法

Echarts图之间的相互切换可能会有延迟或卡顿,如何优化

组件或echarts图的销毁

Echarts的自适应

Html文件的第一行

Doctype

Doctype后还定义了什么

引入style样式的方式有什么

Style为什么放在头部

为什么style会阻塞DOM的渲染

浏览器的渲染过程

对样式的渲染过程

引入style样式的方式有什么

事件冒泡

阻止事件冒泡

解释一下浮动

BFC

清除浮动

一个关于原型链作用域的题,看输出结果

虾皮

暂时性死区

块级作用域

立即执行函数

Var x=y=1

原型链相关

箭头函数

时间循环

Position的属性,绝对定位的父元素是fixed,会相对其定位吗

盒模型

如何统一两种盒模型,如何获得盒模型的宽度,border,padding

用flex布局实现一个两列布局

跨域的原因

跨域的方法

Jsonp的缺点

Cors的实现方式

Opstions请求

正向代理与反向代理

输入url到浏览器渲染的过程

Js为什么放在尾部,css放在头部

https相对于http的区别

https的加密过程,加密算法

http2.0

二进制分帧解决的问题

找到最大不重复的子字符串

小米

一面

计算数组中每个元素的出现次数

数组的reduce方法

Vue组件间的信息通信

Vue实现emit的设计模式

实现一个发布订阅者模式,自定义一个事件库class event

Vue的$on与$emit

浏览器的渲染过程

Webpack打包出来的结果是什么

Webpack静态文件的名字

Vue组件的data为什么用一个函数

http与https的区别

自己的优势有什么

前端技术上有什么觉得很厉害的事

反问

对小米的了解

猿辅导

前端的学习时间,过程

看过的书

计算机相关的专业课

了解操作系统或者计算机网络吗

说一下TCP与UDP

TCP如何保证数据的有序性

JS的作用域

用const定义一个对象,可以修改里边的属性吗

ES6的特性

箭头函数与普通函数的区别

一个箭头函数的题,看输出结果

改变this指向的方法

Apply,call,bind之间的区别

利用apply实现一个bind

了解的vue的知识

Vue的data为什么是一个函数

Vue3.0实现双向绑定

设计模型

哪些地方还用到了观察者模型

跨域问题的产生

解决跨域的方法

求一个二叉树的右视图







更多模拟面试

全部评论

(2) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐