面試真題大彙總

2022-03-08 13:37:11 字數 3038 閱讀 7711

前言

這幾次面試的是工資略微高的,也就是說不是初級前端了,我發現這些企業技術負責人都不用我再去寫面試題了,可能是人家覺得你都面試中高階了,基礎就不考試你了吧。

下邊是面試經過被問到的

面試題

1、講解一下function.prototype.bind()的認知?

}var xm=new people('小明');

var xh=new people('小紅');

//用call實現

xm.say.call(xh,2018,'你好啊')

////

用bind

xm.say.bind(xh)(2018,'你好啊')

view code

實現繼承

function

people()}//

利用call實現繼承

function

stu(name)

}stu.say()

stu.test()

view code

function

people()

}function

stu(name)

寫法二}var stu=new stu('小明');

people.bind(stu)()

//寫法一:函式a.bind(物件a)(arg)這樣的話,函式a內部的呼叫物件就是物件a了,這樣寫法有點死板,寫法2是動態的

stu.say()

stu.test()

view code

2、觀察一下**,說出執行結果?

settimeout(function

());

new promise(function

(resolve,reject)).then(

function

());

console.log(4);

//2、4、1、3

上述**執行:

同步和非同步任務分別進入不同的執行"場所"。

同步的進入主線程,非同步的進入event table並註冊函式。

當指定的事情完成時,event table會將這個函式移入event queue。

主線程內的任務執行完畢為空,會去event queue(佇列)讀取對應的函式,進入主線程執行。

上述過程會不斷重複,也就是常說的event loop(迴圈)。

任務佇列又分為巨集任務佇列和微任務佇列。巨集任務佇列可以有多個,微任務佇列只有乙個。

從執行步驟來看,我們發現微任務,受到了特殊待遇:js非同步機制,就是遇到巨集任務先執行,完成後再執行微任務

巨集任務:settimeout,setinterval。

微任務:promise,process.nexttick

http請求報文:由3部分組成(請求行+請求頭+請求體)

請求行:

①是請求方法,get和post是最常見的http方法,除此以外還包括delete、head、options、put、trace。

②為請求對應的url位址,它和報文頭的host屬性組成完整的請求url。

③是協議名稱及版本號。

請求頭:

是http的報文頭,簡稱頭部(request的header),報文頭包含若干個屬性,格式為「屬性名:屬性值」,服務端據此獲取客戶端的資訊

請求頭可能會有如下引數

//

accept(比如accept:text/plain)

//請求報文可通過乙個「accept」報文頭屬性告訴服務端 客戶端接受什麼型別的響應。

////

//cookie(比如:cookie:username=xm)

//客戶端的cookie就是通過這個報文頭屬性傳給服務端的哦!

//referer(比如referer:

//表示這個請求是從哪個url過來的,假如你通過google搜尋出乙個商家的廣告頁面,你對這個廣告頁面感興趣,滑鼠一點傳送乙個請求報文到商家的**,這個請求報文的referer報文頭屬性值就是

//cache-control(比如cache-control: max-age=600)

//對快取進行控制,如乙個請求希望響應返回的內容在客戶端要被快取一年,或不希望被快取就可以通過這個報文頭達到目的。

//content-type給伺服器的資料型別

////

傳送給伺服器的資料,會對資料進行json序列化

////

傳送給伺服器的資料,會將資料轉化成query string,在瀏覽器network裡引數會放到form data裡

請求體:

也叫報文體,它將乙個頁面表單中的元件值通過param1=value1¶m2=value2的鍵值對形式編碼成乙個格式化串,它承載多個請求引數的資料。不但報文體可以傳遞請求引數,請求url也可以通過類似於「/chapter15/user.html? param1=value1¶m2=value2」的方式傳遞請求引數。

http的響應報文也由三部分組成(響應行+響應頭+響應體)

響應行:

①報文協議及版本;

②狀態碼及狀態描述;

響應頭:

響應報文頭,也是由多個屬性組成;

響應體:

響應報文體,即我們真正要的「乾貨」

參考:

Java面試真題

1.簡述抽象類和抽象方法的作用 分析 抽象類主要用來提供多個派生類可共享的基類的公共定義,他與非抽象類的主要區別如下 1 抽象類只能作為其他類的基類,不能直接例項化,對抽象類不能使用new操作符 2 抽象類中可以包含抽象成員,但非抽相類不可以 3 如果乙個非抽象類從抽象類中派生,則其必須通過覆蓋來實...

面試真題 一

開始彙總面試碰到的 題,為保密起見,不透露公司名字,但會把所有的程式設計題都記錄下來,每一篇代表一家公司,我會盡量整理得快一點。60分鐘,10道單選 5道不定項選擇 若干道填空 2道改錯 1道程式設計。1 給定乙個鍊錶,返回鍊錶逆置後的結果。思路 簡單的鍊錶逆置題,我一開始以為是逆序輸出鍊錶的值,想...

面試真題 二

90分鐘,20道不定項 2道程式設計。1 給定乙個陣列,將所有的奇數放在陣列前半部分,偶數放在後半部分,奇數和奇數 偶數和偶數之間的相對位置不變。思路 從後往前遍歷,每次找到奇數時就插入到陣列最前面,並刪除掉該數。劍指offer有原題,直接拿過來用了 class solution else coun...