前言
這幾次面試的是工資略微高的,也就是說不是初級前端了,我發現這些企業技術負責人都不用我再去寫面試題了,可能是人家覺得你都面試中高階了,基礎就不考試你了吧。
下邊是面試經過被問到的
面試題
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
實現繼承
functionview codepeople()}//
利用call實現繼承
function
stu(name)
}stu.say()
stu.test()
functionview codepeople()
}function
stu(name)
寫法二}var stu=new stu('小明');
people.bind(stu)()
//寫法一:函式a.bind(物件a)(arg)這樣的話,函式a內部的呼叫物件就是物件a了,這樣寫法有點死板,寫法2是動態的
stu.say()
stu.test()
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...