字節跳動、拼多多前端面經


字節跳動

一面

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,介紹下

這些問題幾乎都可以在我的筆記中找到答案哦:https://github.com/ChenMingK/Blog


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM