前端面試總結(jié)


前端重要知識點總結(jié),以供學(xué)習(xí)參考丧鸯,持續(xù)更新仇参,若有錯嘹叫,請各位大佬指點。


HTML/CSS部分


1.doctype的作用

告知瀏覽器的解析器用什么文檔標準解析文檔诈乒,瀏覽器模式分為標準模式和混雜模式罩扇,若未聲明則按混雜模式解析,會導(dǎo)致無兼容性

2.塊級元素怕磨、行內(nèi)元素喂饥、空元素,塊級肠鲫、行內(nèi)如何區(qū)分

塊級元素:div p h1-h6 ul li ...

行內(nèi)元素:a span img input textarea em? ...

空元素:img? br? hr? input? meta

區(qū)分塊級员帮、行內(nèi)元素:塊級元素獨占一行,可設(shè)置width height导饲;行內(nèi)元素不可設(shè)置捞高,且與其他行內(nèi)元素位于同一行

3.css盒子模型

內(nèi)容 padding margin border

4.css選擇器

id選擇器氯材、類選擇器、標簽選擇器棠枉、后代選擇器浓体、屬性選擇器、子選擇器辈讶、偽類選擇器命浴、通配符選擇器(*)

優(yōu)先級:!important > 內(nèi)聯(lián) >? id > class > tag > *

特指度:I-C-E計算公式

5.css定位

static:默認定位

absolute:絕對定位贱除,相對于第一個非static定位的父級元素定位生闲,原位置消失

relative:相對定位,相對于原來的位置定位月幌,原位置仍保留

fixed:絕對定位碍讯,相對于瀏覽器窗口定位

6.display的值

none:元素消失

block:像塊級元素一樣顯示

inline:像行內(nèi)元素一樣顯示

inline-block:對象呈行內(nèi)元素顯示,但是內(nèi)容作為block對象呈現(xiàn)

list-item:元素像列表一樣顯示(取列表的list-style-type)

7.display:none和visibility:hidden的區(qū)別

display:none指的是元素徹底消失

visibility:hidden元素還占空間扯躺,留一片空白區(qū)域

8.transition過渡

9.src和href的區(qū)別

src(source)用于替代當(dāng)前元素捉兴,href(hypertext reference)建立一個引用連接。

10.localStorage录语、sessionStorage和cookie的區(qū)別

localStorage和sessionStorage是 H5 web storage API提供的

三者都存儲在瀏覽器端

localStorage:存儲持久數(shù)據(jù)倍啥,瀏覽器關(guān)閉后不丟失,存儲大小>5M澎埠,僅本地保存虽缕。

sessionStorage:存儲臨時數(shù)據(jù),數(shù)據(jù)在瀏覽器關(guān)閉后丟失蒲稳,存儲大小>5M氮趋,僅本地保存。

cookie:在設(shè)置的cookie過期時間前一直有效江耀,存儲大小<4K剩胁,會自動傳遞到服務(wù)器,服務(wù)器也可寫cookie到客戶端

11.一次完整的HTTP請求


js部分


1.js面向?qū)ο螅豪^承祥国、多態(tài)昵观、封裝

繼承:實例繼承原型的屬性

多態(tài):同一個方法在不同時刻表現(xiàn)出不同的狀態(tài)(比如子對象繼承了父對象的屬性,但是覺得不合適系宫,可以重寫屬性索昂,覆蓋父對象的屬性)

封裝:代碼復(fù)用性提高

2.js三大核心

ECMAScript:核心語言功能

DOM:? 提供訪問和操作網(wǎng)頁內(nèi)容的方法和接口

BOM:提供與瀏覽器交互的方法和接口

3.數(shù)據(jù)類型

Undefind、Null扩借、Number椒惨、String、Boolean潮罪、Object康谆,Symbol(ES6新增)

4.強制類型轉(zhuǎn)換和隱式類型轉(zhuǎn)換

①強制類型轉(zhuǎn)換:parseInt parseFloat Number String

②隱式類型轉(zhuǎn)換:+ - == if while 將參數(shù)轉(zhuǎn)換為boolean值

5.數(shù)據(jù)結(jié)構(gòu)

棧:先入后出? push(從末端插入) pop(從末端移除)

隊列:先入先出 push(從末端插入) shift(從前端移除) unshift(從前端插入)

6.ajax請求的post和get方法區(qū)別

get:使用url傳遞參數(shù)领斥,容量小,安全性差沃暗,有緩存

post:一般用于修改服務(wù)器上的資源月洛,容量大,無緩存

7.ajax

最大特點:局部刷新頁面

ajax核心:XMLHttpRequest對象 或 ActiveXObject對象(IE5 IE6)

請求流程:①創(chuàng)建XHR對象孽锥;②調(diào)用XHR對象的open方法(接收三個參數(shù):請求類型嚼黔、url、是否異步發(fā)送請求的布爾值)惜辑;③當(dāng)狀態(tài)碼為2時唬涧,調(diào)用XHR的send方法,發(fā)送請求盛撑;④觸發(fā)XHR對象的onreadystatechange事件碎节;⑤判斷readyState狀態(tài)(0-4)是否完成請求(4代表完成);⑥判斷status(HTTP狀態(tài))抵卫;⑦調(diào)用成功狮荔、失敗的函數(shù)

注意:為了確保跨瀏覽器兼容性介粘,必須在調(diào)用open()方法之前指定onreadystatechange事件

解析json數(shù)據(jù):JSON.parse()

8.jsonp原理

由回掉函數(shù)和數(shù)據(jù)構(gòu)成殖氏,通過動態(tài)創(chuàng)建script標簽使用

9.同源策略

一個域上的腳本不允許訪問另一個域的文檔,安全性

10.事件

HTML事件:嵌入在html元素中的事件(缺點:html與js耦合性太強)

DOM0級事件:將函數(shù)賦值給一個事件處理程序

DOM2級事件:addEventListener() removeEventListener()

IE事件:attachEvent()? detachEvent()

阻止事件冒泡碗短、獲仁芨稹:stopPropagation()

11.主流瀏覽器內(nèi)核

webkit:safari chrome

presto:opera

gecko:firefox

trident:IE

12.DOM操作

創(chuàng)建:document.createElement

添加:①appendChild ②insertBefore

修改:①removeChild ②remove ③replaceChild ④replaceNode

12.2 DOM擴展

①querySelector等選擇器

②自定義屬性 data-

13.BOM

核心:window

打開窗口:window.open()

彈出窗口:alert confirm等

location對象:常用href屬性

history對象:history.go(-1)返回上一頁

14.理解this對象

在全局函數(shù)中题涨,this等于window偎谁,當(dāng)函數(shù)作為某個對象的方法調(diào)用時,this等于該對象

15.閉包

有權(quán)訪問另一個函數(shù)作用域中的變量的函數(shù)

16.call apply

call()和apply()的作用相同纲堵,call()第一個參數(shù)是this值巡雨,其余參數(shù)需要逐個列舉出來,apply()傳遞的第一個參數(shù)是this席函,其余參數(shù)是參數(shù)數(shù)組


jquery部分


1.jquery選擇器

①基本選擇器:id class element *

②層次選擇器:parent>child(所有子元素)? prev+next(prev之后的相鄰元素铐望,可用next()代替)? prev~siblings(prev所有兄弟元素,可用nextAll()代替)

③簡單過濾選擇器(常用的)

:odd? ? ? ? ? 索引值為奇數(shù)的元素茂附,從0開始

:event? ? ? ? 索引值為偶數(shù)的元素正蛙,從0開始

:eq(index)? 索引值為index的元素,從0開始

:gt(index)? ? 索引值大于index的元素营曼,從0開始

:lt(index)? ? 索引值小于index的元素乒验,從0開始

④內(nèi)容過濾選擇器

:contains(text)? 包含text文本的元素

:has(selector)? ? 包含selector元素的元素

:empty? ? ? ? ? ? ? 不包含子元素的或文本內(nèi)容為空的元素

:parent? ? ? ? ? ? ? 含有子元素或文本的元素(內(nèi)部不為空的元素)

⑤可見性過濾選擇器

:hidden? ? 獲取所有不可見的元素

:visible? ? ? 獲取所有可見的元素

⑥屬性過濾選擇器(常用)

[ attribute ]? ? 獲取包含給定屬性的元素

[ attribute=value ]? 獲取給定屬性是某個值的元素

⑦子元素過濾選擇器

:nth-child()? 獲取每個父元素下的特定位置的元素,從1開始

:first-child? ? 獲取每個父元素的第一個子元素

:last-child? ? 獲取每個父元素的最后一個子元素

:only-child? ? 獲取每個父元素下的僅有一個子元素類別

⑧表單元素屬性過濾選擇器

:enabled? ? 獲取表單中所有屬性為可用的元素

:disabled? ? 獲取表單中所有屬性為不可用的元素

:checked? ? 獲取表單中所有被選中的元素

:selected? ? 獲取表單中所有被選中的option元素

⑨表單選擇器(常用)

:input? ? ? ? 獲取所有的input textarea select

:password? 獲取所有的密碼框

:radio? ? ? ? 獲取所有的單選按鈕

:checkbox? 獲取所有的復(fù)選框

:submit? ? ? 獲取素有的提交按鈕

:button? ? ? 獲取所有按鈕

:file? ? ? ? ? ? 獲取所有的文件域

2.元素操作

attr()? ? 獲取蒂阱、設(shè)置屬性

html()? 獲取第一個锻全、修改所有內(nèi)容

text()? 獲取所有狂塘、修改所有內(nèi)容

val()? ? 獲取、修改表單元素的值

css()? ? 設(shè)置元素樣式

addClass()? 增加元素類名

toggleClass? 切換元素類名

removeClass 刪除元素類名

3.DOM操作

創(chuàng)建節(jié)點:$()

內(nèi)部插入節(jié)點:

①append()? ? ? ? 插入在內(nèi)部最后一個位置

②appendTo()? ? 把所選元素追加到另外指定元素的集合中

③prepend()? ? ? 插入到內(nèi)部第一個位置

外部插入節(jié)點

①after(content)? before(content)? 插入到目標元素外部的后面/前面鳄厌,content為插入內(nèi)容

②insertAfter(content)? insertBefore(content)? 插入到目標元素的后面/前面荞胡,content為目標元素

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市了嚎,隨后出現(xiàn)的幾起案子泪漂,更是在濱河造成了極大的恐慌,老刑警劉巖歪泳,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件窖梁,死亡現(xiàn)場離奇詭異,居然都是意外死亡夹囚,警方通過查閱死者的電腦和手機纵刘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來荸哟,“玉大人假哎,你說我怎么就攤上這事“袄” “怎么了舵抹?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長劣砍。 經(jīng)常有香客問我惧蛹,道長,這世上最難降的妖魔是什么刑枝? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任香嗓,我火速辦了婚禮,結(jié)果婚禮上装畅,老公的妹妹穿的比我還像新娘靠娱。我一直安慰自己,他們只是感情好掠兄,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布像云。 她就那樣靜靜地躺著,像睡著了一般蚂夕。 火紅的嫁衣襯著肌膚如雪迅诬。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天婿牍,我揣著相機與錄音侈贷,去河邊找鬼。 笑死牍汹,一個胖子當(dāng)著我的面吹牛铐维,可吹牛的內(nèi)容都是我干的柬泽。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼嫁蛇,長吁一口氣:“原來是場噩夢啊……” “哼锨并!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起睬棚,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤第煮,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后抑党,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體包警,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年底靠,在試婚紗的時候發(fā)現(xiàn)自己被綠了害晦。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡暑中,死狀恐怖壹瘟,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情鳄逾,我是刑警寧澤稻轨,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站雕凹,受9級特大地震影響殴俱,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜枚抵,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一线欲、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧俄精,春花似錦询筏、人聲如沸榕堰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽逆屡。三九已至圾旨,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間魏蔗,已是汗流浹背砍的。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留莺治,地道東北人廓鞠。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓帚稠,卻偏偏與公主長得像,于是被迫代替她去往敵國和親床佳。 傳聞我的和親對象是個殘疾皇子滋早,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 前端開發(fā)面試知識點大綱: HTML&CSS: 對Web標準的理解、瀏覽器內(nèi)核差異砌们、兼容性杆麸、hack、CSS基本功:...
    秀才JaneBook閱讀 2,363評論 0 25
  • 1. 居中不定高div樣式 參考:http://www.haorooms.com/post/css_div_juz...
    darr250閱讀 4,642評論 0 7
  • 1.瀏覽器內(nèi)核 1)浪感、Trident內(nèi)核代表產(chǎn)品Internet Explorer昔头,又稱其為IE內(nèi)核。Triden...
    Devour_z閱讀 228評論 0 1
  • HTML篇 HTML標簽 都表示斜體影兽,如果這種斜體字對該瀏覽器不可用的話揭斧,可以使用高亮、反白或加下劃線等樣式峻堰。 l...
    Gopal閱讀 320評論 0 1
  • 如果年輪停止未蝌,你我皆成永恒。 近日來茧妒,越發(fā)覺得燒手稿非常有必要萧吠,雖然看著寫滿字的紙張很有成就感,仔細思量桐筏,除了無病...
    年輪止閱讀 411評論 3 8