2019 字节跳动 校招 前端面试
由于面试的时候没记问题,这些问题都是脑补回来的,有些问题问得很深入但是记不太清了,也可能是我没理解清楚。
1. promise以及then方法相关。
2. 使用构造函数创建对象相关。
(1). 使用new创建时JS都做了哪些事情。
(2). 如何自己实现new这个过程,包括创建空对象,如何将函数执行环境设置到该对象上,如何给它添加应该继承的方法,这里不能用 new Object或者对象字面量创建一个对象再将原型链连接上,因为new是需要自己实现的。
3. 箭头函数和普通函数的区别,如果使用箭头函数作为构造函数是否会有不同。
4. 生成器相关。
5. http2 对 http1的的扩展。
6. 实现给Array添加原型方法flat。
Array.prototype.flat = function () {
let res = [];
for (let i = 0; i < this.length; i++) {
if (typeof this[i] == 'object') {
res = res.concat(Array.prototype.flat.call(this[i]));
} else {
res.push(this[i]);
}
}
return res;
};
7. 如何在改变一个对象的属性时对其进行拦截。
8. JS如何实现动画,实现后发现有掉帧如何进行优化。
9. JS中如何自定义事件。
10. JS中0.1 + 0.2 不等于0.3的具体原因是什么, 如何解决这个问题?
面试结果:GG
本文标题:2019 字节跳动 校招 前端面试
本文链接:https://www.haomeiwen.com/subject/lvcjsctx.html
网友评论