国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

轉(zhuǎn):前端 100 問:能搞懂80%的請把簡歷給我

這篇具有很好參考價值的文章主要介紹了轉(zhuǎn):前端 100 問:能搞懂80%的請把簡歷給我。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

《前端 100 問:能搞懂80%的請把簡歷給我》

引言

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

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

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

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

第 1 - 10 題

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

解析:第 1 題


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

解析:第 2 題


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

解析:第 3 題


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

解析:第 4 題


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

解析:第 5 題


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

解析:第 6 題


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

解析:第 7 題


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

解析:第 8 題


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

解析:第 9 題


第 10 題:(頭條)異步筆試題

請寫出下面代碼的運行結(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');
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

解析:第 10 題


第 11 - 20 題

第 11 題:(攜程)算法手寫題

已知如下數(shù)組:

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

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

解析:第 11 題


第 12 題:(滴滴、挖財、微醫(yī)、??担㎎S 異步解決方案的發(fā)展歷程以及優(yōu)缺點。

解析:第 12 題


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

解析:第 13 題


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

解析:第 14 題


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

解析:第 15 題


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

解析:第 16 題


第 17 題:A、B 機器正常連接后,B 機器突然重啟,問 A 此時處于 TCP 什么狀態(tài)

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

解析:第 17 題


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

解析:第 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

<span class="token keyword">this</span><span class="token punctuation">.</span><span class="token function">setState</span><span class="token punctuation">(</span><span class="token punctuation">{</span>val<span class="token punctuation">:</span> <span class="token keyword">this</span><span class="token punctuation">.</span>state<span class="token punctuation">.</span>val <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token keyword">this</span><span class="token punctuation">.</span>state<span class="token punctuation">.</span>val<span class="token punctuation">)</span><span class="token punctuation">;</span>    <span class="token comment">// 第 2 次 log</span>

<span class="token function">setTimeout</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
  <span class="token keyword">this</span><span class="token punctuation">.</span><span class="token function">setState</span><span class="token punctuation">(</span><span class="token punctuation">{</span>val<span class="token punctuation">:</span> <span class="token keyword">this</span><span class="token punctuation">.</span>state<span class="token punctuation">.</span>val <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token keyword">this</span><span class="token punctuation">.</span>state<span class="token punctuation">.</span>val<span class="token punctuation">)</span><span class="token punctuation">;</span>  <span class="token comment">// 第 3 次 log</span>

  <span class="token keyword">this</span><span class="token punctuation">.</span><span class="token function">setState</span><span class="token punctuation">(</span><span class="token punctuation">{</span>val<span class="token punctuation">:</span> <span class="token keyword">this</span><span class="token punctuation">.</span>state<span class="token punctuation">.</span>val <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token keyword">this</span><span class="token punctuation">.</span>state<span class="token punctuation">.</span>val<span class="token punctuation">)</span><span class="token punctuation">;</span>  <span class="token comment">// 第 4 次 log</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

}

render() {
return null;
}
};

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

解析:第 19 題


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

解析:第 20 題


第 21 - 30 題

第 21 題:有以下 3 個判斷數(shù)組的方法,請分別介紹它們之間的區(qū)別和優(yōu)劣

Object.prototype.toString.call() 、 instanceof 以及 Array.isArray()

解析:第 21 題


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

解析:第 22 題


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

解析:第 23 題


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

解析:第 24 題


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

解析:第 25 題


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

可從IIFE、AMD、CMD、CommonJS、UMD、webpack(require.ensure)、ES Module、<script type="module"> 這幾個角度考慮。

解析:第 26 題


第 27 題:全局作用域中,用 const 和 let 聲明的變量不在 window 上,那到底在哪里?如何去獲???。

解析:第 27 題


第 28 題:cookie 和 token 都存放在 header 中,為什么不會劫持 token?

解析:第 28 題


第 29 題:聊聊 Vue 的雙向數(shù)據(jù)綁定,Model 如何改變 View,View 又是如何改變 Model 的

解析:第 29 題


第 31 - 40 題

第 30 題:兩個數(shù)組合并成一個數(shù)組

請把兩個數(shù)組 [‘A1’, ‘A2’, ‘B1’, ‘B2’, ‘C1’, ‘C2’, ‘D1’, ‘D2’] 和 [‘A’, ‘B’, ‘C’, ‘D’],合并為 [‘A1’, ‘A2’, ‘A’, ‘B1’, ‘B2’, ‘B’, ‘C1’, ‘C2’, ‘C’, ‘D1’, ‘D2’, ‘D’]。

解析: 第 30 題


第 31 題:改造下面的代碼,使之輸出0 - 9,寫出你能想到的所有解法。

for (var i = 0; i< 10; i++){
	setTimeout(() => {
		console.log(i);
    }, 1000)
}
  • 1
  • 2
  • 3
  • 4
  • 5

解析:第 31 題


第 32 題:Virtual DOM 真的比操作原生 DOM 快嗎?談?wù)勀愕南敕ā?/h3>

解析:第 32 題


第 33 題:下面的代碼打印什么內(nèi)容,為什么?

var b = 10;
(function b(){
    b = 20;
    console.log(b); 
})();
  • 1
  • 2
  • 3
  • 4
  • 5

解析:第 33 題


第 34 題:簡單改造下面的代碼,使之分別打印 10 和 20。

var b = 10;
(function b(){
    b = 20;
    console.log(b); 
})();
  • 1
  • 2
  • 3
  • 4
  • 5

解析:第 34 題


第 35 題:瀏覽器緩存讀取規(guī)則

可以分成 Service Worker、Memory Cache、Disk Cache 和 Push Cache,那請求的時候 from memory cache 和 from disk cache 的依據(jù)是什么,哪些數(shù)據(jù)什么時候存放在 Memory Cache 和 Disk Cache中?

解析:第 35 題


第 36 題:使用迭代的方式實現(xiàn) flatten 函數(shù)。

解析:第 36 題


第 37 題:為什么 Vuex 的 mutation 和 Redux 的 reducer 中不能做異步操作?

解析:第 37 題


第 38 題:(京東)下面代碼中 a 在什么情況下會打印 1?

var a = ?;
if(a == 1 && a == 2 && a == 3){
 	console.log(1);
}
  • 1
  • 2
  • 3
  • 4

解析:第 38 題


第 39 題:介紹下 BFC 及其應(yīng)用。

解析:第 39 題


第 40 題:在 Vue 中,子組件為何不可以修改父組件傳遞的 Prop

如果修改了,Vue 是如何監(jiān)控到屬性的修改并給出警告的。

解析:第 40 題


第 41 - 50 題

第 41 題:下面代碼輸出什么

var a = 10;
(function () {
    console.log(a)
    a = 5
    console.log(window.a)
    var a = 20;
    console.log(a)
})()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

解析:第 41題


第 42 題:實現(xiàn)一個 sleep 函數(shù)

比如 sleep(1000) 意味著等待1000毫秒,可從 Promise、Generator、Async/Await 等角度實現(xiàn)

解析:第 42 題


第 43 題:使用 sort() 對數(shù)組 [3, 15, 8, 29, 102, 22] 進行排序,輸出結(jié)果

解析:第 43 題


第 44 題:介紹 HTTPS 握手過程

解析:第 44 題


第 45 題:HTTPS 握手過程中,客戶端如何驗證證書的合法性

解析:第 45 題


第 46 題:輸出以下代碼執(zhí)行的結(jié)果并解釋為什么

var obj = {
    '2': 3,
    '3': 4,
    'length': 2,
    'splice': Array.prototype.splice,
    'push': Array.prototype.push
}
obj.push(1)
obj.push(2)
console.log(obj)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

解析:第 46 題


第 47 題:雙向綁定和 vuex 是否沖突

解析:第 47 題


第 48 題:call 和 apply 的區(qū)別是什么,哪個性能更好一些

解析:第 48 題


第 49 題:為什么通常在發(fā)送數(shù)據(jù)埋點請求的時候使用的是 1x1 像素的透明 gif 圖片?

解析:第 49 題


第 50 題:(百度)實現(xiàn) (5).add(3).minus(2) 功能。

例: 5 + 3 - 2,結(jié)果為 6

解析:第 50 題


第 51 - 60 題

第 51 題:Vue 的響應(yīng)式原理中 Object.defineProperty 有什么缺陷?

為什么在 Vue3.0 采用了 Proxy,拋棄了 Object.defineProperty?

解析:第 51 題


第 52 題:怎么讓一個 div 水平垂直居中

解析:第 52 題


第 53 題:輸出以下代碼的執(zhí)行結(jié)果并解釋為什么

var a = {n: 1};
var b = a;
a.x = a = {n: 2};

console.log(a.x)
console.log(b.x)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

解析:第 53 題


第 54 題:冒泡排序如何實現(xiàn),時間復(fù)雜度是多少, 還可以如何改進?

解析:第 54 題


第 55 題:某公司 1 到 12 月份的銷售額存在一個對象里面

如下:{1:222, 2:123, 5:888},請把數(shù)據(jù)處理為如下結(jié)構(gòu):[222, 123, null, null, 888, null, null, null, null, null, null, null]。

解析:第 55 題


第 56 題:要求設(shè)計 LazyMan 類,實現(xiàn)以下功能。

LazyMan('Tony');
// Hi I am Tony

LazyMan(‘Tony’).sleep(10).eat(‘lunch’);
// Hi I am Tony
// 等待了10秒…
// I am eating lunch

LazyMan(‘Tony’).eat(‘lunch’).sleep(10).eat(‘dinner’);
// Hi I am Tony
// I am eating lunch
// 等待了10秒…
// I am eating diner

LazyMan(‘Tony’).eat(‘lunch’).eat(‘dinner’).sleepFirst(5).sleep(10).eat(‘junk food’);
// Hi I am Tony
// 等待了5秒…
// I am eating lunch
// I am eating dinner
// 等待了10秒…
// I am eating junk food

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

解析:第 56 題


第 57 題:分析比較 opacity: 0、visibility: hidden、display: none 優(yōu)劣和適用場景。

解析:第 57 題


第 58 題:箭頭函數(shù)與普通函數(shù)(function)的區(qū)別是什么?構(gòu)造函數(shù)(function)可以使用 new 生成實例,那么箭頭函數(shù)可以嗎?為什么?

解析:第 58 題


第 59 題:給定兩個數(shù)組,寫一個方法來計算它們的交集。

例如:給定 nums1 = [1, 2, 2, 1],nums2 = [2, 2],返回 [2, 2]。

解析:第 59 題


第 60 題:已知如下代碼,如何修改才能讓圖片寬度為 300px ?注意下面代碼不可修改。

<img src="1.jpg" style="width:480px!important;”>

解析:第 60 題


第 61 - 70 題

第 61 題:介紹下如何實現(xiàn) token 加密

解析:第 61 題


第 62 題:redux 為什么要把 reducer 設(shè)計成純函數(shù)

解析:第 62 題


第 63 題:如何設(shè)計實現(xiàn)無縫輪播

解析:第 63 題


第 64 題:模擬實現(xiàn)一個 Promise.finally

解析:第 64 題


第 65 題: a.b.c.d 和 a['b']['c']['d'],哪個性能更高?

解析:第 65 題


第 66 題:ES6 代碼轉(zhuǎn)成 ES5 代碼的實現(xiàn)思路是什么

解析:第 66 題


第 67 題:數(shù)組編程題

隨機生成一個長度為 10 的整數(shù)類型的數(shù)組,例如 [2, 10, 3, 4, 5, 11, 10, 11, 20],將其排列成一個新數(shù)組,要求新數(shù)組形式如下,例如 [[2, 3, 4, 5], [10, 11], [20]]。

解析:第 67 題


第 68 題: 如何解決移動端 Retina 屏 1px 像素問題

解析:第 68 題


第 69 題: 如何把一個字符串的大小寫取反(大寫變小寫小寫變大寫),例如 ’AbC’ 變成 ‘a(chǎn)Bc’ 。

解析:第 69 題


第 70 題: 介紹下 webpack 熱更新原理,是如何做到在不刷新瀏覽器的前提下更新頁面的

解析:第 70 題


第 71 - 80 題

第 71 題: 實現(xiàn)一個字符串匹配算法,從長度為 n 的字符串 S 中,查找是否存在字符串 T,T 的長度是 m,若存在返回所在位置。

解析:第 71 題


第 72 題: 為什么普通 for 循環(huán)的性能遠遠高于 forEach 的性能,請解釋其中的原因。

轉(zhuǎn):前端 100 問:能搞懂80%的請把簡歷給我

解析:第 72 題


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

解析:第 73 題


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

解析:第 74 題


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

解析:第 75 題


第 76 題:輸出以下代碼運行結(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]);

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

解析:第 76 題


第 77 題:算法題「旋轉(zhuǎn)數(shù)組」

給定一個數(shù)組,將數(shù)組中的元素向右移動 k 個位置,其中 k 是非負數(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]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

示例 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]
  • 1
  • 2
  • 3
  • 4
  • 5

解析:第 77 題


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

解析:第 78 題


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

解析:第 79 題


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

解析:第 80 題


第 81 - 90 題

第 81 題:打印出 1 - 10000 之間的所有對稱數(shù)

例如:121、1331 等

解析:第 81 題


第 82 題:周一算法題之「移動零」

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

示例:

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

說明:

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

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

解析:第 82 題


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

解析:第 83 題


第 84 題:請實現(xiàn)一個 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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

解析:第 84 題


第 85 題:react-router 里的 <Link> 標簽和 <a> 標簽有什么區(qū)別

如何禁掉 <a> 標簽?zāi)J事件,禁掉之后如何實現(xiàn)跳轉(zhuǎn)。

解析:第 85 題


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

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

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

示例:

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

因為 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

  • 1
  • 2
  • 3
  • 4

解析:第 86 題


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

解析:第 87 題


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

以下數(shù)據(jù)結(jié)構(gòu)中,id 代表部門編號,name 是部門名稱,parentId 是父部門編號,為 0 代表一級部門,現(xiàn)在要求實現(xiàn)一個 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
}
]
}
]
},
···
];

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52

解析:第 88 題


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

解析:第 89 題


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

解析:第 90 題


第 91 - 100 題

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

解析:第 91 題


第 92 題:已知數(shù)據(jù)格式,實現(xiàn)一個函數(shù) fn 找出鏈條中所有的父級 id

const value = '112'
const fn = (value) => {
...
}
fn(value) // 輸出 [1, 11, 112]
  • 1
  • 2
  • 3
  • 4
  • 5

解析:第 92 題


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

示例 1:

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

中位數(shù)是 2.0

示例 2:

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

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

解析:第 93 題


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

解析:第 94 題


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

解析:第 95 題


第 96 題:介紹下前端加密的常見場景和方法

解析:第 96 題


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

解析:第 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);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

解析:第 98 題


第 99 題:(bilibili)編程算法題

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

解析:第 99 題


第 100 題:(京東)請寫出如下代碼的打印結(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();

備注: 本文轉(zhuǎn)自“木易楊說”,原文地址:https://blog.csdn.net/github_34708151/article/details/95165589
每道題源碼的序號在轉(zhuǎn)載時出現(xiàn)了問題,導(dǎo)致序號變成了單獨的行,老猿就不修改了,實在有不認可的請轉(zhuǎn)原文閱讀。文章來源地址http://www.zghlxwxcb.cn/news/detail-711247.html

到了這里,關(guān)于轉(zhuǎn):前端 100 問:能搞懂80%的請把簡歷給我的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 掌握docker這幾招,你也能搞云計算了

    容器技術(shù)出現(xiàn)十多年了,已經(jīng)在測試和生產(chǎn)環(huán)境得到普遍應(yīng)用。幾個好處: 便攜性、隔離性 封裝性,可復(fù)用 方便做集群部署和資源調(diào)度 … 所謂云計算,就是所有計算、服務(wù)、產(chǎn)品都云化,部署在云上,你只管使用就行,不用操心它怎么部署。怎么云化?虛擬化和docker化嘛

    2024年02月12日
    瀏覽(68)
  • 一文搞懂前端的所有類數(shù)組類型

    前面博文有介紹JavaScript中數(shù)組的一些特性,通過對這些數(shù)組特性的深入梳理,能夠加深我們對數(shù)組相關(guān)知識的理解,詳見博文: 一文搞懂JavaScript數(shù)組的特性 其實,在前端開發(fā)中,除了數(shù)組以外,還有一種類似數(shù)組的對象,一般叫做類數(shù)組、或偽數(shù)組,也是我們需要掌握的知

    2024年02月07日
    瀏覽(17)
  • 一篇文章帶你搞懂前端Cookie

    一篇文章帶你搞懂前端Cookie

    瀏覽器Cookie相信各位點進這篇文章的小伙伴應(yīng)該不陌生了,它是前端領(lǐng)域中一個非常重要的內(nèi)容,當然也是面試的一個考點,不知道各位小伙伴是否真正掌握了Cookie呢?當然沒有掌握也是沒有關(guān)系的,可以跟著小編的腳步一起來學習一下前端Cookie,沒有熟練掌握的小伙伴看完這

    2024年02月04日
    瀏覽(28)
  • 一篇文章搞懂前端sso需要做什么

    一篇文章搞懂前端sso需要做什么

    父域 Cookie 認證中心 LocalStorage 跨域 一般情況下,用戶的登錄狀態(tài)是記錄在 Session 中的,要實現(xiàn)共享登錄狀態(tài),就要先共享 Session,但是由于不同的應(yīng)用系統(tǒng)有著不同的域名,盡管 Session 共享了,但是由于 SessionId 是往往保存在瀏覽器 Cookie 中的,因此存在作用域的限制,無法

    2024年02月20日
    瀏覽(29)
  • 登錄時發(fā)起的請求是Get還是Post?Get和Post的區(qū)別

    為了保證信息的安全性,注冊、登錄等操作通常都會使用 POST 請求, GET 請求一般用來獲取信息 1. 根據(jù)HTTP規(guī)范,GET用于信息獲取。 GET 請求的數(shù)據(jù)會附在URL之后(就是把數(shù)據(jù)放置在HTTP協(xié)議頭中),以?分割URL和傳輸數(shù)據(jù),參數(shù)之間以相連,如: login.action? GET 方式提交的數(shù)據(jù)最

    2024年02月13日
    瀏覽(14)
  • 【前端|Javascript第1篇】一文搞懂Javascript的基本語法

    【前端|Javascript第1篇】一文搞懂Javascript的基本語法

    歡迎來到JavaScript的奇妙世界!作為前端開發(fā)的基石,JavaScript為網(wǎng)頁增色不少,賦予了靜態(tài)頁面活力與交互性。如果你是一名前端小白,對編程一無所知,或者只是聽說過JavaScript卻從未涉足過,那么你來對了地方!本篇博客將帶領(lǐng)你逐步進入JavaScript的大門,一步一步地探索這

    2024年02月14日
    瀏覽(23)
  • 【前端|Javascript第4篇】詳解Javascript的事件模型:小白也能輕松搞懂!

    【前端|Javascript第4篇】詳解Javascript的事件模型:小白也能輕松搞懂!

    前言 在當今數(shù)字時代,前端技術(shù)正日益成為塑造用戶體驗的關(guān)鍵。而其中一個不可或缺的核心概念就是 JavaScript的事件模型 ?;蛟S你是剛踏入前端領(lǐng)域的小白,或者是希望深入了解事件模型的開發(fā)者,不論你的經(jīng)驗如何,本篇博客都將帶你揭開事件模型的神秘面紗。 ?? 作者

    2024年02月13日
    瀏覽(25)
  • 【前端|Javascript第3篇】探秘JavaScript的作用域與作用域鏈:小白也能輕松搞懂!

    【前端|Javascript第3篇】探秘JavaScript的作用域與作用域鏈:小白也能輕松搞懂!

    大家好!歡迎來到本篇博客,今天我們將解開JavaScript編程世界中的一道神秘面紗:作用域與作用域鏈。很多Javascript開發(fā)者并不真正理解它們,但這些概念對掌握Javascript至關(guān)重要。如果你對這些概念感到困惑,不要擔心!本文將以通俗易懂的方式,用趣味橫生的例子,為你詳

    2024年02月13日
    瀏覽(31)
  • 前端JavaScript面試100問(上)

    閉包:就是能夠讀取外層函數(shù)內(nèi)部變量的函數(shù)。 閉包需要滿足三個條件: 訪問所在作用域; 函數(shù)嵌套; 在所在作用域外被調(diào)用 。 優(yōu)點: 可以重復(fù)使用變量,并且不會造成變量污染 。 缺點: 會引起內(nèi)存泄漏 使用閉包的注意點: 由于閉包會使得函數(shù)中的變量都被保存在內(nèi)

    2024年02月15日
    瀏覽(38)
  • 【直接收藏】前端JavaScript面試100問(中)

    1、https協(xié)議需要到ca申請證書,一般免費證書較少,因而需要一定費用。 2、http是超文本傳輸協(xié)議,信息是明文傳輸,https則是具有安全性的ssl加密傳輸協(xié)議。 3、http和https使用的是完全不同的連接方式,用的端口也不一樣,前者是80,后者是443。 4、http的連接很簡單,是無狀

    2024年02月08日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包