千鋒教育web前端高頻面試題視頻教程,kerwin大話前端面試秘籍(附答案)
2023-07-20 13:58 作者:bili_15693673419 | 我要投稿

html5語義化的好處:
對開發(fā)者:
1:便于團隊的開發(fā)的維護
2:在沒有加載css的情況下也能呈現(xiàn)較好的內(nèi)容結(jié)構(gòu)與代碼結(jié)構(gòu),易于閱讀
對瀏覽器:
1:有利于seo,搜索引擎的爬蟲依賴于標(biāo)簽來確定上下文和各個關(guān)鍵字的權(quán)重,
2:方便其他設(shè)備的解析,利于無障礙閱讀,提高可訪問性
面向?qū)ο?/strong>
原型鏈的基本原理: 任何一個實例,通過原型鏈,找到它上面的原型1,該原型對象中的方法和屬性,可以被所有原型實例共享
閉包
1》垃圾回收機制:垃圾回收是指自動管理內(nèi)存的一種機制。由于JavaScript是一門動態(tài)語言,它在運行時會動態(tài)創(chuàng)建和銷毀對象,因此需要一種機制來自動識別和清除不再使用的對象,以釋放內(nèi)存空間。
下面是前端中常見的垃圾回收機制:
- 標(biāo)記清除(Mark-and-Sweep):這是最常見的垃圾回收算法。它通過標(biāo)記不再使用的對象,然后清除(銷毀)這些被標(biāo)記的對象和它們占用的內(nèi)存空間。標(biāo)記清除算法通過根對象(如全局對象、局部變量等)作為起點,遍歷所有對象,標(biāo)記出可達(dá)對象,然后將未被標(biāo)記的對象進行清除。
- 引用計數(shù)(Reference Counting):這是另一種常見的垃圾回收算法。引用計數(shù)算法通過維護每個對象的引用計數(shù),當(dāng)一個對象被引用時,它的引用計數(shù)加1,當(dāng)一個對象不再被引用時,它的引用計數(shù)減1。當(dāng)引用計數(shù)為0時,表示該對象不再被使用,可以被垃圾回收銷毀。然而,引用計數(shù)算法容易受到循環(huán)引用的影響,即兩個或多個對象相互引用,導(dǎo)致它們的引用計數(shù)永遠(yuǎn)不為0,無法被回收。
2》防抖,節(jié)流
防抖(Debounce):防抖的核心思想是在事件被觸發(fā)后,等待一段時間,如果在這段時間內(nèi)沒有再次觸發(fā)該事件,則執(zhí)行相應(yīng)的操作。如果在等待時間內(nèi)再次觸發(fā)了該事件,則重新計時。這樣可以避免在連續(xù)觸發(fā)事件時頻繁地執(zhí)行操作,減少不必要的計算和請求。
應(yīng)用場景:當(dāng)用戶在輸入框中輸入內(nèi)容時,可以使用防抖來減少觸發(fā)搜索請求的次數(shù)。只有當(dāng)用戶停止輸入一段時間后,才會發(fā)起搜索請求。
- 節(jié)流(Throttle):節(jié)流的核心思想是在一定的時間間隔內(nèi),無論事件觸發(fā)多少次,只執(zhí)行一次操作。即將連續(xù)觸發(fā)的事件合并為一個。這樣可以控制事件的調(diào)用頻率,避免因頻繁觸發(fā)事件而導(dǎo)致性能問題。
標(biāo)簽: