亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

前端 100 問:能搞懂80%的請(qǐng)把簡(jiǎn)歷給我

Scott / 1224人閱讀

摘要:解析第題第題為什么的和的中不能做異步操作解析第題第題京東下面代碼中在什么情況下會(huì)打印解析第題第題介紹下及其應(yīng)用。盡量減少操作次數(shù)。解析第題第題京東快手周一算法題之兩數(shù)之和給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個(gè)數(shù)。

引言

半年時(shí)間,幾千人參與,精選大廠前端面試高頻 100 題,這就是「壹題」。

在 2019 年 1 月 21 日這天,「壹題」項(xiàng)目正式開始,在這之后每個(gè)工作日都會(huì)出一道高頻面試題,主要涵蓋阿里、騰訊、頭條、百度、網(wǎng)易等大公司和常見題型。得益于大家熱情參與,現(xiàn)在每道題都有很多答案,提供的解題思路和答案也大大增長(zhǎng)了我的見識(shí),到現(xiàn)在已累積 100 道題目,『 8000+ 』Star 了,可以說你面試中遇到過的題目,在這里肯定能發(fā)現(xiàn)熟悉的身影。

后期計(jì)劃除了持續(xù)更新「壹題」之外,還將整理非常詳細(xì)的答案解析,提供完整的思考鏈路,幫助大家更好的理解題目,以及題目背后的知識(shí),「我們的目標(biāo)不是背題,而是通過題目查漏補(bǔ)缺,溫故知新」。

更多更全更詳細(xì)的每日一題和答案解析,戳這里查看

第 1 - 10 題 第 1 題:(滴滴、餓了么)寫 React / Vue 項(xiàng)目時(shí)為什么要在列表組件中寫 key,其作用是什么?

解析:第 1 題


第 2 題:["1", "2", "3"].map(parseInt) what & why ?

解析:第 2 題


第 3 題:(挖財(cái))什么是防抖和節(jié)流?有什么區(qū)別?如何實(shí)現(xiàn)?

解析:第 3 題


第 4 題:介紹下 Set、Map、WeakSet 和 WeakMap 的區(qū)別?

解析:第 4 題


第 5 題:介紹下深度優(yōu)先遍歷和廣度優(yōu)先遍歷,如何實(shí)現(xiàn)?

解析:第 5 題


第 6 題:請(qǐng)分別用深度優(yōu)先思想和廣度優(yōu)先思想實(shí)現(xiàn)一個(gè)拷貝函數(shù)?

解析:第 6 題


第 7 題:ES5/ES6 的繼承除了寫法以外還有什么區(qū)別?

解析:第 7 題


第 8 題:setTimeout、Promise、Async/Await 的區(qū)別

解析:第 8 題


第 9 題:(頭條、微醫(yī))Async/Await 如何通過同步的方式實(shí)現(xiàn)異步

解析:第 9 題


第 10 題:(頭條)異步筆試題
請(qǐng)寫出下面代碼的運(yùn)行結(jié)果
async function async1() {
    console.log("async1 start");
    await async2();
    console.log("async1 end");
}
async function async2() {
    console.log("async2");
}
console.log("script start");
setTimeout(function() {
    console.log("setTimeout");
}, 0)
async1();
new Promise(function(resolve) {
    console.log("promise1");
    resolve();
}).then(function() {
    console.log("promise2");
});
console.log("script end");

解析:第 10 題


第 11 - 20 題 第 11 題:(攜程)算法手寫題
已知如下數(shù)組:

var arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14] ] ] ], 10];

編寫一個(gè)程序?qū)?shù)組扁平化去并除其中重復(fù)部分?jǐn)?shù)據(jù),最終得到一個(gè)升序且不重復(fù)的數(shù)組

解析:第 11 題


第 12 題:(滴滴、挖財(cái)、微醫(yī)、海康)JS 異步解決方案的發(fā)展歷程以及優(yōu)缺點(diǎn)。

解析:第 12 題


第 13 題:(微醫(yī))Promise 構(gòu)造函數(shù)是同步執(zhí)行還是異步執(zhí)行,那么 then 方法呢?

解析:第 13 題


第 14 題:(兌吧)情人節(jié)福利題,如何實(shí)現(xiàn)一個(gè) new

解析:第 14 題


第 15 題:(網(wǎng)易)簡(jiǎn)單講解一下http2的多路復(fù)用

解析:第 15 題


第 16 題:談?wù)勀銓?duì)TCP三次握手和四次揮手的理解

解析:第 16 題


第 17 題:A、B 機(jī)器正常連接后,B 機(jī)器突然重啟,問 A 此時(shí)處于 TCP 什么狀態(tài)
如果A 與 B 建立了正常連接后,從未相互發(fā)過數(shù)據(jù),這個(gè)時(shí)候 B 突然機(jī)器重啟,問 A 此時(shí)處于 TCP 什么狀態(tài)?如何消除服務(wù)器程序中的這個(gè)狀態(tài)?(超綱題,了解即可)

解析:第 17 題


第 18 題:(微醫(yī))React 中 setState 什么時(shí)候是同步的,什么時(shí)候是異步的?

解析:第 18 題


第 19 題:React setState 筆試題,下面的代碼輸出什么?
class Example extends React.Component {
  constructor() {
    super();
    this.state = {
      val: 0
    };
  }
  
  componentDidMount() {
    this.setState({val: this.state.val + 1});
    console.log(this.state.val);    // 第 1 次 log

    this.setState({val: this.state.val + 1});
    console.log(this.state.val);    // 第 2 次 log

    setTimeout(() => {
      this.setState({val: this.state.val + 1});
      console.log(this.state.val);  // 第 3 次 log

      this.setState({val: this.state.val + 1});
      console.log(this.state.val);  // 第 4 次 log
    }, 0);
  }

  render() {
    return null;
  }
};

解析:第 19 題


第 20 題:介紹下 npm 模塊安裝機(jī)制,為什么輸入 npm install 就可以自動(dòng)安裝對(duì)應(yīng)的模塊?

解析:第 20 題


第 21 - 30 題 第 21 題:有以下 3 個(gè)判斷數(shù)組的方法,請(qǐng)分別介紹它們之間的區(qū)別和優(yōu)劣
Object.prototype.toString.call() 、 instanceof 以及 Array.isArray()

解析:第 21 題


第 22 題:介紹下重繪和回流(Repaint & Reflow),以及如何進(jìn)行優(yōu)化

解析:第 22 題


第 23 題:介紹下觀察者模式和訂閱-發(fā)布模式的區(qū)別,各自適用于什么場(chǎng)景

解析:第 23 題


第 24 題:聊聊 Redux 和 Vuex 的設(shè)計(jì)思想

解析:第 24 題


第 25 題:說說瀏覽器和 Node 事件循環(huán)的區(qū)別

解析:第 25 題


第 26 題:介紹模塊化發(fā)展歷程

可從IIFE、AMD、CMD、CommonJS、UMD、webpack(require.ensure)、ES Module、

解析:第 72 題


第 73 題: 介紹下 BFC、IFC、GFC 和 FFC

解析:第 73 題


第 74 題: 使用 JavaScript Proxy 實(shí)現(xiàn)簡(jiǎn)單的數(shù)據(jù)綁定

解析:第 74 題


第 75 題:數(shù)組里面有10萬個(gè)數(shù)據(jù),取第一個(gè)元素和第10萬個(gè)元素的時(shí)間相差多少

解析:第 75 題


第 76 題:輸出以下代碼運(yùn)行結(jié)果
// example 1
var a={}, b="123", c=123;  
a[b]="b";
a[c]="c";  
console.log(a[b]);

---------------------
// example 2
var a={}, b=Symbol("123"), c=Symbol("123");  
a[b]="b";
a[c]="c";  
console.log(a[b]);

---------------------
// example 3
var a={}, b={key:"123"}, c={key:"456"};  
a[b]="b";
a[c]="c";  
console.log(a[b]);

解析:第 76 題


第 77 題:算法題「旋轉(zhuǎn)數(shù)組」
給定一個(gè)數(shù)組,將數(shù)組中的元素向右移動(dòng) k 個(gè)位置,其中 k 是非負(fù)數(shù)。

示例 1:

輸入: [1, 2, 3, 4, 5, 6, 7] 和 k = 3
輸出: [5, 6, 7, 1, 2, 3, 4]
解釋:
向右旋轉(zhuǎn) 1 步: [7, 1, 2, 3, 4, 5, 6]
向右旋轉(zhuǎn) 2 步: [6, 7, 1, 2, 3, 4, 5]
向右旋轉(zhuǎn) 3 步: [5, 6, 7, 1, 2, 3, 4]

示例 2:

輸入: [-1, -100, 3, 99] 和 k = 2
輸出: [3, 99, -1, -100]
解釋: 
向右旋轉(zhuǎn) 1 步: [99, -1, -100, 3]
向右旋轉(zhuǎn) 2 步: [3, 99, -1, -100]

解析:第 77 題


第 78 題:Vue 的父組件和子組件生命周期鉤子執(zhí)行順序是什么

解析:第 78 題


第 79 題:input 搜索如何防抖,如何處理中文輸入

解析:第 79 題


第 80 題:介紹下 Promise.all 使用、原理實(shí)現(xiàn)及錯(cuò)誤處理

解析:第 80 題


第 81 - 90 題 第 81 題:打印出 1 - 10000 之間的所有對(duì)稱數(shù)
例如:121、1331 等

解析:第 81 題


第 82 題:周一算法題之「移動(dòng)零」

給定一個(gè)數(shù)組 nums,編寫一個(gè)函數(shù)將所有 0 移動(dòng)到數(shù)組的末尾,同時(shí)保持非零元素的相對(duì)順序。

示例:

輸入: [0,1,0,3,12]
輸出: [1,3,12,0,0]

說明:

必須在原數(shù)組上操作,不能拷貝額外的數(shù)組。

盡量減少操作次數(shù)。

解析:第 82 題


第 83 題:var、let 和 const 區(qū)別的實(shí)現(xiàn)原理是什么

解析:第 83 題


第 84 題:請(qǐng)實(shí)現(xiàn)一個(gè) add 函數(shù),滿足以下功能。
add(1);             // 1
add(1)(2);      // 3
add(1)(2)(3);// 6
add(1)(2, 3); // 6
add(1, 2)(3); // 6
add(1, 2, 3); // 6

解析:第 84 題


第 85 題:react-router 里的 標(biāo)簽和 標(biāo)簽有什么區(qū)別
如何禁掉  標(biāo)簽?zāi)J(rèn)事件,禁掉之后如何實(shí)現(xiàn)跳轉(zhuǎn)。

解析:第 85 題


第 86 題:(京東、快手)周一算法題之「兩數(shù)之和」

給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個(gè)數(shù)。

你可以假設(shè)每個(gè)輸入只對(duì)應(yīng)一種答案,且同樣的元素不能被重復(fù)利用。

示例:

給定 nums = [2, 7, 11, 15], target = 9

因?yàn)?nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

解析:第 86 題


第 87 題:在輸入框中如何判斷輸入的是一個(gè)正確的網(wǎng)址。

解析:第 87 題


第 88 題:實(shí)現(xiàn) convert 方法,把原始 list 轉(zhuǎn)換成樹形結(jié)構(gòu),要求盡可能降低時(shí)間復(fù)雜度

以下數(shù)據(jù)結(jié)構(gòu)中,id 代表部門編號(hào),name 是部門名稱,parentId 是父部門編號(hào),為 0 代表一級(jí)部門,現(xiàn)在要求實(shí)現(xiàn)一個(gè) convert 方法,把原始 list 轉(zhuǎn)換成樹形結(jié)構(gòu),parentId 為多少就掛載在該 id 的屬性 children 數(shù)組下,結(jié)構(gòu)如下:

// 原始 list 如下
let list =[
    {id:1,name:"部門A",parentId:0},
    {id:2,name:"部門B",parentId:0},
    {id:3,name:"部門C",parentId:1},
    {id:4,name:"部門D",parentId:1},
    {id:5,name:"部門E",parentId:2},
    {id:6,name:"部門F",parentId:3},
    {id:7,name:"部門G",parentId:2},
    {id:8,name:"部門H",parentId:4}
];
const result = convert(list, ...);

// 轉(zhuǎn)換后的結(jié)果如下
let result = [
    {
      id: 1,
      name: "部門A",
      parentId: 0,
      children: [
        {
          id: 3,
          name: "部門C",
          parentId: 1,
          children: [
            {
              id: 6,
              name: "部門F",
              parentId: 3
            }, {
              id: 16,
              name: "部門L",
              parentId: 3
            }
          ]
        },
        {
          id: 4,
          name: "部門D",
          parentId: 1,
          children: [
            {
              id: 8,
              name: "部門H",
              parentId: 4
            }
          ]
        }
      ]
    },
  ···
];

解析:第 88 題


第 89 題:設(shè)計(jì)并實(shí)現(xiàn) Promise.race()

解析:第 89 題


第 90 題:實(shí)現(xiàn)模糊搜索結(jié)果的關(guān)鍵詞高亮顯示

解析:第 90 題


第 91 - 100 題 第 91 題:介紹下 HTTPS 中間人攻擊

解析:第 91 題


第 92 題:已知數(shù)據(jù)格式,實(shí)現(xiàn)一個(gè)函數(shù) fn 找出鏈條中所有的父級(jí) id
const value = "112"
const fn = (value) => {
...
}
fn(value) // 輸出 [1, 11, 112]

解析:第 92 題


第 93 題:給定兩個(gè)大小為 m 和 n 的有序數(shù)組 nums1 和 nums2。請(qǐng)找出這兩個(gè)有序數(shù)組的中位數(shù)。要求算法的時(shí)間復(fù)雜度為 O(log(m+n))。

示例 1:

nums1 = [1, 3]
nums2 = [2]

中位數(shù)是 2.0

示例 2:

nums1 = [1, 2]
nums2 = [3, 4]

中位數(shù)是(2 + 3) / 2 = 2.5

解析:第 93 題


第 94 題:vue 在 v-for 時(shí)給每項(xiàng)元素綁定事件需要用事件代理嗎?為什么?

解析:第 94 題


第 95 題:模擬實(shí)現(xiàn)一個(gè)深拷貝,并考慮對(duì)象相互引用以及 Symbol 拷貝的情況

解析:第 95 題


第 96 題:介紹下前端加密的常見場(chǎng)景和方法

解析:第 96 題


第 97 題:React 和 Vue 的 diff 時(shí)間復(fù)雜度從 O(n^3) 優(yōu)化到 O(n) ,那么 O(n^3) 和 O(n) 是如何計(jì)算出來的?

解析:第 97 題


第 98 題:(京東)寫出如下代碼的打印結(jié)果
function changeObjProperty(o) {
  o.siteUrl = "http://www.baidu.com"
  o = new Object()
  o.siteUrl = "http://www.google.com"
} 
let webSite = new Object();
changeObjProperty(webSite);
console.log(webSite.siteUrl);

解析:第 98 題


第 99 題:(bilibili)編程算法題
用 JavaScript 寫一個(gè)函數(shù),輸入 int 型,返回整數(shù)逆序后的字符串。如:輸入整型 1234,返回字符串“4321”。要求必須使用遞歸函數(shù)調(diào)用,不能用全局變量,輸入函數(shù)必須只有一個(gè)參數(shù)傳入,必須返回字符串。

解析:第 99 題


第 100 題:(京東)請(qǐng)寫出如下代碼的打印結(jié)果
function Foo() {
    Foo.a = function() {
        console.log(1)
    }
    this.a = function() {
        console.log(2)
    }
}
Foo.prototype.a = function() {
    console.log(3)
}
Foo.a = function() {
    console.log(4)
}
Foo.a();
let obj = new Foo();
obj.a();
Foo.a();

解析:第 100 題


?? 看完三件事

如果你覺得這篇內(nèi)容對(duì)你挺有啟發(fā),我想邀請(qǐng)你幫我三個(gè)小忙:

點(diǎn)贊,讓更多的人也能看到這篇內(nèi)容(收藏不點(diǎn)贊,都是耍流氓 -_-

關(guān)注我的 GitHub,讓我們成為長(zhǎng)期關(guān)系

關(guān)注公眾號(hào)「高級(jí)前端進(jìn)階」,每周重點(diǎn)攻克一個(gè)前端面試重難點(diǎn),公眾號(hào)后臺(tái)回復(fù)「資料」 送你精選前端優(yōu)質(zhì)資料。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/105489.html

相關(guān)文章

  • 前端最強(qiáng)面經(jīng)匯總

    摘要:獲取的對(duì)象范圍方法獲取的是最終應(yīng)用在元素上的所有屬性對(duì)象即使沒有代碼,也會(huì)把默認(rèn)的祖宗八代都顯示出來而只能獲取元素屬性中的樣式。因此對(duì)于一個(gè)光禿禿的元素,方法返回對(duì)象中屬性值如果有就是據(jù)我測(cè)試不同環(huán)境結(jié)果可能有差異而就是。 花了很長(zhǎng)時(shí)間整理的前端面試資源,喜歡請(qǐng)大家不要吝嗇star~ 別只收藏,點(diǎn)個(gè)贊,點(diǎn)個(gè)star再走哈~ 持續(xù)更新中……,可以關(guān)注下github 項(xiàng)目地址 https:...

    wangjuntytl 評(píng)論0 收藏0
  • 28歲裸辭轉(zhuǎn)行前端是怎樣的一種體驗(yàn)

    摘要:?jiǎn)螜C(jī)游戲重視沉浸感和體驗(yàn)感。這是我做判斷時(shí)的一條重要準(zhǔn)則。在我的心目中,我是廣外的走讀生。所以我對(duì)廣外總是有一種特別的感謝之情。而這段時(shí)間是最純粹穩(wěn)定的。這種崗位確是挺對(duì)口的。還是相當(dāng)感謝同學(xué)們的。本來題目是沒有年齡的。只是在網(wǎng)上??吹揭呀?jīng)25歲是否還適合轉(zhuǎn)行當(dāng)程序員之類的問題,就覺得有必要暴露下我的年齡。 在過去的2018年,我從新媒體藝術(shù)的小圈子里面跳出來,自學(xué)編程,轉(zhuǎn)行前端。現(xiàn)已經(jīng)入職...

    tangr206 評(píng)論0 收藏0
  • 入職三天,公司給了100塊錢叫我走人

    摘要:初來乍到,請(qǐng)多多指教,踏入廣州那一刻,我滿懷熱情的對(duì)廣州說。本以為,作為大學(xué)畢業(yè)的我,在國(guó)內(nèi)最大的軟件服務(wù)商被寄予厚望的我,在廣州應(yīng)該也是個(gè)熱餑餑,不愁吃不愁穿不愁的。然而現(xiàn)實(shí)是廣州的公司對(duì)我并沒有多多指教,而是多多拋棄。 十月,金秋季節(jié),本是豐收之時(shí),卻因?yàn)殛懤m(xù)有同事離職,心中多少有些悲涼之意,頓然想起從參加工作到現(xiàn)在,五年已過,當(dāng)年青澀懵懂的小年輕,如今出街招搖過市時(shí),被小孩子看到...

    Chao 評(píng)論0 收藏0
  • 入職三天,公司給了100塊錢叫我走人

    摘要:初來乍到,請(qǐng)多多指教,踏入廣州那一刻,我滿懷熱情的對(duì)廣州說。本以為,作為大學(xué)畢業(yè)的我,在國(guó)內(nèi)最大的軟件服務(wù)商被寄予厚望的我,在廣州應(yīng)該也是個(gè)熱餑餑,不愁吃不愁穿不愁的。然而現(xiàn)實(shí)是廣州的公司對(duì)我并沒有多多指教,而是多多拋棄。 十月,金秋季節(jié),本是豐收之時(shí),卻因?yàn)殛懤m(xù)有同事離職,心中多少有些悲涼之意,頓然想起從參加工作到現(xiàn)在,五年已過,當(dāng)年青澀懵懂的小年輕,如今出街招搖過市時(shí),被小孩子看到...

    Karrdy 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<