当前位置: 移动技术网 > IT编程>开发语言>JavaScript > 字节跳动前端开发实习生 三轮技术面面经

字节跳动前端开发实习生 三轮技术面面经

2020年07月24日  | 移动技术网IT编程  | 我要评论

我投递的是头条的前端开发实习生,通过内推投了简历,差不多两天HR就打电话约面试了,整体来说字节的面试效率还是很高的,面试官人也都很好,在面试前我在leetcode刷了很多题,也看了很多其他人的面经,下面分享一下我的面试过程,下面我的回答不一定正确,仅供参考


一面(1h20m)

上来就是一道算法题
1、js数组的去重
我用了ES6中的Set,一行搞定
面试官:如果不支持ES6呢?
我:可以用循环
面试官:数组里面还可能有对象、数组、字符串呢,怎么去重
emmm后面一顿操作,在面试官的提示下还是没写出来,但是他说能看得出我的方向是对的,只是思路可能有点乱
换题

2、CSS实现一个直径10px的半圆
写完之后面试官问了一下我用到的属性的作用
后面面试完了去试了一下我的代码显示出来的不对。。。

3、CSS实现等腰直角三角形
很简单,利用border

4、深拷贝
写了一下代码,写出来了,之前有了解过

5、JS的基本数据类型
Number,String,Boolean,undefined,object,null
ES6新增symbol,还有个bigint(没了解过)
一开始漏了一个始终想不起来是哪个。。。后面换下一题的时候想起来漏了boolean

6、this相关
简单介绍一下this
改变this指向(apply,call,bind)
分别说一下
用apply实现bind
面试官:之前是不是写过
我:是。。
就没叫我写了,下一题

7、闭包
概念,给了一段代码问我这是不是闭包,又给了一段代码问我输出
闭包的好处(避免全局污染,保护变量),缺点(内存泄漏),怎么解决(不会)

8、http状态码
说了几个常用的,200,404,500等,还分别说了一下1-5数字开头的意义

9、盒模型
简单说了一下,有ie盒模型和标准盒模型
区别(width包括的不同)
怎么设置(box-sizing)
box-sizing有哪些属性,简单说一下(border-box,padding-box等等)

10、position有哪些属性
我:absolute,relative,fixed,sticky(漏了个static)
面试官:简单说一下

反问:
1、
我:如果这次面试通过的话,下次面试大概在什么时候?
面试官:应该是连着吧,一会会有hr联系你

差不多20分钟后hr就打电话通知我第一轮面试过了,第二轮面试约的隔了两天


二面(1h10m)

1、先是简单跟我聊了一下项目和前端的学习情况

2、v-for的key为index为什么不行
我:比如1 2 3 4 5,我要在2节点和3节点之间插入一个新节点6,这时候index就没有一一对应了

3、nodejs(因为简历中写了正在学习node,所以简单问了我)
面试官:学到什么程度
我:还很基础,有用过它创建服务器
面试官:怎么创建呢?
我(想了一会):有点忘了
面试官:你可以查阅资料,我看看你遇到问题是怎么解决的
然后我就百度找,随便打开了一个博客,找到了创建的方法
面试官:为什么不去看官方文档呢?
我:。。。
在这里插入图片描述
4、new Vue()做了什么事情
面试官:问个你博客里写到的,new Vue()做了什么事情,有哪一块印象比较深刻吗,当时为什么会想到去看他的源码

5、html5有哪些好玩的新特性
我:canvas。。

6、实现一个布局,三个div盒子,左右两个宽高固定,中间的自适应
我用flex布局实现了
面试官:还能用什么方法
我:百分比,em,rem

7、Linux常用的命令
脑子一抽只记得cd,rm,想不起其他的,也不知道为什么突然就想不起来

8、问了几个git命令

9、用原生js实现一下JQuery的$(".class #id")
document.getElementById()
document.getElementsByClassName()

10、请求头部有哪些
我没回答上来
面试官:这个很简单不应该不会的哦

11、用js实现JSON.stringify()
面试官:可以用自己的ide写代码
一顿操作后还是有些小问题,面试官稍微提示了一下我,让我说了一下思路,然后就结束了

反问:
1、
我:前端实习生会不会安排去学习一些后端方面的东西?
面试官:对于实习生来说的话是不会的,主要先让他们搞好自己这一块

2、
我:因为小程序近几年比较火,所以想问下前端实习生会不会有接触小程序的机会
面试官:会有的


三面(55m)

1、先简单聊了一下
为啥学习前端,什么时候接触的,是否确定往前端发展

2、聊项目
印象最深刻的是哪个项目,当时做这个项目的动机是什么?项目有遇到什么困难吗?如果很多数据要展示加载过慢怎么办?(分页)

3、跨域
有哪些解决方式?(jsonp、document.domain,CORS等)
jsonp的原理是什么?(<script>标签的src属性支持跨域)
jsonp有什么局限性?(只能get请求)
面试官:为什么只能get请求你知道吗
我:没了解过
面试官:想一想,分析一下为什么
我:(思考了一会)可能是由于他的请求数据是跟在url后面?因为它利用src,所以只能跟在url后面?
面试官:对,所以他没办法放到消息体中传送

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网