千鋒教育web前端高頻面試題視頻教程,kerwin大話前端面試秘籍(附答案)

display:none與visibility:hidden的區(qū)別
都可以讓元素不可見
dispaly:none會讓元素完全從渲染樹中消失,渲染的時候不占用任何空間;visibility:hidden不會讓元素從渲染樹消失,渲染元素會繼續(xù)占據(jù)空間,只是內(nèi)容不可見
修改常規(guī)流中元素的display通常會造成文檔重排,修改visibility屬性只會造成本元素的重繪
js有那些內(nèi)置對象?
數(shù)據(jù)封裝類對象:object、array、Boolean、number、srting
其他對象:function、auguments、data、regexp、error
es6新增對象:symbel(標(biāo)識唯一的id)、map、set、promise、proxy、reflect
回流(reflow)和重繪(repaint)是瀏覽器渲染頁面時的兩個關(guān)鍵過程。
回流是指當(dāng)頁面的結(jié)構(gòu)、布局或尺寸發(fā)生改變時,瀏覽器需要重新計算元素的幾何屬性(如位置、大小等),然后重新構(gòu)建并布局頁面,稱為回流。回流會導(dǎo)致頁面的重新渲染,稱為重排(reflow)。
重繪是指當(dāng)頁面的樣式(如顏色、背景等)改變,但不影響元素的幾何屬性時,瀏覽器只需要將更改的部分重新繪制,稱為重繪。重繪不需要進(jìn)行布局計算,所以開銷較小。
回流和重繪的頻繁發(fā)生會導(dǎo)致瀏覽器性能下降,影響頁面的響應(yīng)速度和用戶體驗。因此,在開發(fā)中需要盡量減少回流和重繪的發(fā)生。
標(biāo)簽: