前言
上个礼拜在某网站投了b站,面试官看来,终于敲定了1/14号,就是今天面试,晚上面完一面,来一份热乎乎的面经给大家参考,虽然凉了,一开始问的是大数据渲染怎么实现,埋点是怎么处理的
一面(60min)
- 自我介绍 上来就微信电话,然后两人都开着免提,回音太吵就换成电话了,自爆家门,问了一下项目经验,实习经验就开始进入了正式面试啦。
- 事件委托机制
- 事件冒泡,阻止冒泡事件,阻止默认事件
- js中,不使用es6的promise异步方法,怎么进行异步请求
- ES6异步请求方法 promise/async await/generator等
- var let和const区别, 块级作用域
- 什么是作用域链 作用域 闭包 读代码
- 箭头函数的概念和普通函数的区别
- this的指向,说了一段代码,指出不同函数this的指向
- apply、call、bind改变this call和apply与箭头函数有什么区别
- Math的方法 Math.max Math.min 向上向下取整 Math.ceil Math.floor Math.round
- js的toFixed方法
- js的map方法
- 实现一个ajax方法
- 跨域的问题 说了jsonp domain cors postmessage,iframe怎么在开发中实现跨域不在后端设置(node)
- Vue/React里为什么不能用index作为key
- canvas了解吗 webgl
- 油漆桶算法
- git的场景提,在A分支写代码,B分支出了Bug 怎么切换到B分支,在不commit和注释的情况下 git stash
- git 常用的命令,第一次commit 第二次commit 发现实际上只需要压缩合并两次提交的就好了,用哪个命令 git rebase -i
- 浏览器从输入URL到渲染完页面的整个过程 越详细越好
- 最长公共子串怎么实现
- OSI七层协议、http是哪个层 tcp/udp呢
- null是什么类型 typeof null
- 介绍一下对浏览器内核的理解 v8引擎
- 说说哈希算法
- 缓存 浏览器缓存 http缓存
- linux常用命令
结语
面试的都是些比较基础的,奈何我菜鸡,祝大家开年都可以找到合适满意的工作。后续有时间补充答案咯