詞法、語法、表達(dá)式、
數(shù)據(jù)類型,以及各數(shù)據(jù)類型的方法特點(diǎn)
基本數(shù)據(jù)類型: number string boolean ,可以用typeof來檢測(cè)
引用型數(shù)據(jù):object, array,
流程控制語句、
dom bom html5 API
html5 new stuff
程序的執(zhí)行原理(event loop,異步--> setTimeout(x,0))
event
click事件冒泡,如何阻止?
防止默認(rèn)的行為
8,9 整理js知識(shí)點(diǎn)、css知識(shí)點(diǎn)
10針對(duì)考卷來針對(duì)性地回顧知識(shí)點(diǎn)。整理一些問題
js
變量-->聲明提升-->作用域-->this-->apply, ->閉包
apply,call,一樣的。call的參數(shù)需要一個(gè)一個(gè)輸入,而apply是數(shù)組
bind,跟call一樣,但是不立即執(zhí)行而是返回這個(gè)函數(shù)
執(zhí)行環(huán)境 ~= 作用域, 界定了變量、函數(shù)的訪問權(quán)限
作用域鏈
http & xhr
ajax的本質(zhì)、4部曲、post和get的方法、跨域、XSS攻擊(input)
https://segmentfault.com/a/1190000000691919#articleHeader7
0(未初始化)還沒有調(diào)用open()方法
1(載入)已調(diào)用send()方法,正在發(fā)送請(qǐng)求
2(載入完成)send()方法完成,已收到全部響應(yīng)內(nèi)容
3(解析)正在解析響應(yīng)內(nèi)容
4(完成)響應(yīng)內(nèi)容解析完成,可以再客戶端使用了
1xx消息
2xx成功
3xx重定向
4xx客戶端錯(cuò)誤,401需要身份認(rèn)證;403沒有權(quán)限
5xx服務(wù)端錯(cuò)誤,500服務(wù)器未預(yù)料到的狀況,502bad gateway上游服務(wù)器,503服務(wù)器過載無法處理
css知識(shí)架構(gòu)
優(yōu)先級(jí)計(jì)算:
- 元素(類型)選擇器(type selectors)(例如:h1)和 偽元素選擇器(pseudo-elements)(例如::before)
- 類選擇器(class selectors) (例如:.example
),屬性選擇器(attributes selectors)(例如:[type="radio"]
),偽類選擇器(pseudo-classes)(例如::hover) - ID選擇器(例如:#example)
通用選擇器(universal selector)(*
),組合符合(combinators) (+
, >
, ~
, '
') 和 否定偽類(negation pseudo-class)(:not()
) 不會(huì)影響優(yōu)先級(jí)(但是,在 :not() 內(nèi)部聲明的選擇器是會(huì)影響優(yōu)先級(jí)的)。
給元素添加的內(nèi)聯(lián)樣式 (例如, style="font-weight:bold"
) 總會(huì)覆蓋外部樣式表的任何樣式 ,因此可看作是具有最高的優(yōu)先級(jí)。.
!important又是一層
盒子模型:border margin padding content
width:
box-sizing=border-box is all
box-sizing=content-box is content only
margin-top/bottom's % is based on width!!!
padding沒負(fù)值
堆疊上下文:html,-webkit-overflow-scrolling:touch,opacity<1,z-index不為 auto
margin相鄰計(jì)算:以最大的為準(zhǔn),而不是簡(jiǎn)單的相加哦!
block、inline、inline-block的區(qū)別
display:inline。線框,top middle baseline bottom,vertical-align:top
https://github.com/dwqs/blog/issues/22
bfc: zoom:1 overflow: not auto
屬于不同的BFC,它們之間就不會(huì)發(fā)生外邊距折疊
高度計(jì)算包括float、第一個(gè)元素的margin-top,最后一個(gè)元素的margin-bottom
解決多列問題:在BFC上下文中,每個(gè)盒子的左外側(cè)緊貼包含塊的左側(cè)
屬性值的繼承
瀏覽器的加載順序
解析html文檔,遇到img, css, js就發(fā)起請(qǐng)求去下載。
img, css的下載和解析是異步的。
js的下載和解析都是同步的,會(huì)掛起渲染的進(jìn)程。
渲染機(jī)制:
https://segmentfault.com/a/1190000004292479
dom + cssom = render tree -> layout -> paint
邊加載邊渲染。遇到dom/css的修改就會(huì)重新渲染(layout/paint)
為什么js要放在body的底部?
因?yàn)槟軌蚍乐鬼撁婕虞d的阻塞。
是否js
dom ready 和 window.onload區(qū)別
jq:
為什么可以串行寫,因?yàn)樗祷氐氖莏query這個(gè)對(duì)象
jq對(duì)象如何轉(zhuǎn)換成dom對(duì)象