字节跳动
一面
1.说出以下代码的原型关系,以及 Object 和 Function 的原型关系
Function;
function test() {
}
var obj = new test();
__proto__ prototype
2.合并两个已排序的链表:递归解法、迭代解法 3.判断数组类型有哪些方法 4.webpack 常用 loader、plugin 5.Promise 中抛出异常能否被 catch 捕获?
let promise = new Promise((resolve, reject) => {
throw new Error()
reject()
})
promise.catch(err => {
console.log(err)
})
6.冯诺依曼体系讲讲 7.线程与进程的区别 8.操作系统为什么要设计用户态和内核态?
二面
1.讲讲模块化规范 2.import 和 require 的区别 3.require 是如何解析路径的? 4.模拟实现 new 操作符 5.算法:找出字符串中第一个不重复的字符 6.promise 考察
/*
用 promise 实现以下功能。
具体: fn1和fn2都是异步函数,f1、fn2同时执行,并且fn1、fn2的结果是 fn3的参数。当fn1或者fn2发生错误时,fn3照常执行,此时的参数为空。
*/
eg:
fn1 = async() => {
// 发送请求
const data = await sendRquest1();
return data;
}
fn2 = async() => {
// 发送请求
const data = await sendRquest2();
return data;
}
7.下面代码的输出,why?
'use strict';
var b = 2;
if (true) {
let a = 2;
var b = 3;
var c = 4;
const d = 5;
}
console.log(a);
console.log(b);
console.log(c);
console.log(d);
var d = 6;
8.节流防抖,写代码 9.列举获取 DOM 元素的方式 10.react 生命周期,HOC
三面
1.node 中间件原理 2.写一个中间件,怎么使用? 3.webpack 打包整体流程 4.两道简单的算法题:层次遍历二叉树、反转链表 5.项目中 cookie + redis 实现自动登录怎么做的? 6.常见 web 安全问题,xss、csrf、sql 注入、数据库加密、cookie 加密及防范措施 7.为啥学前端? 8.以后有什么打算? 9.有和别人协作的项目吗?
拼多多
一面 电话面试
1.项目问题:IndexedDB 和 localStorage 使用的区别 2.图片懒加载思路,监听页面滚动实现的,怎么做优化?除了节流?除了监听页面滚动有没有其他方案? 3.前端监控是啥?让你设计一个 SDK 给别人用(自己设计一个前端监控库怎么做?) 4.添加事件处理程序有哪些方案?区别? 5.给一个 DOM 添加多个 click 事件,不能用 addEventListener,只用 onClick 咋整? 6.发布订阅模式,嘴巴撕 7.聊天室用了 WebSocket,说一说 8.最后说第 5 个问题可以用发布订阅的思路来实现
二面 微信视频
1.自我介绍 balabalabala (说了看书和看视频来学习前端) 2.平常看哪些书啊? 3.webpack 懂吧?说下用过的 loader 和 plugin 4.PWA 了解吧?说一下 4.node.js 用过是吧?说下中间件是啥? 5.ES6 用得多吧?说一下 ES6 6.说到了模块化,require 与 import 的区别? 7.说到 require 会把加载过的模块缓存在内存,说说这会导致些什么问题(内存暴增啥的,比方说我们暴露出一个对象,上万个请求都往这个对象上添加属性) 8.说说浏览器和 node.js 的事件循环机制 9.聊到设计模式,讲讲你知道哪些设计模式(举《JavaScript 设计模式与开发实践》中的例子,讲了几个感觉差不多了就不讲了) 10.项目用到 PM2,介绍下
推荐 :
- 020 持续更新,精品小圈子每日都有新内容,干货浓度极高。
- 结实人脉、讨论技术 你想要的这里都有!
- 抢先入群,跑赢同龄人!(入群无需任何费用)
- 群号:779186871
- 点击此处,与前端开发大牛一起交流学习
申请即送:
-
BAT大厂面试题、独家面试工具包,
-
资料免费领取,包括 各类面试题以及答案整理,各大厂面试真题分享!