400個最常見的 JavaScript 面試問答(4)

海擁科技 發佈 2022-08-06T15:30:15.012091+00:00

今天將給大家帶來的是 400 個最常見的 JavaScript 面試問答第四部分。33.你如何在 Service Worker 重新啟動時重用信息?

大家好,我是海擁,專注於前端知識的分享。今天將給大家帶來的是 400 個最常見的 JavaScript 面試問答第四部分。接下來我會持續更新(爭取日更,也可能每周3-5篇),每小節大概 10 道題左右,總共會有 400 多道。

大家一定要記得點讚收藏呀!!!

31.什麼是Service Worker?

Service Worker 基本上是一個在後台運行的腳本(JavaScript 文件),與網頁分離並提供不需要網頁或用戶交互的功能。Service Worker 的一些主要功能是豐富的離線體驗(離線第一個 Web 應用程式開發)、定期後台同步、推送通知、攔截和處理網絡請求以及以編程方式管理響應緩存。


32.如何使用 Service Worker 操作 DOM?

Service Worker 不能直接訪問 DOM。但是它可以通過響應通過postMessage接口發送的消息與它控制的頁面進行通信,並且這些頁面可以操作 DOM。


33.你如何在 Service Worker 重新啟動時重用信息?

Service Worker 的問題在於它在不使用時會被終止,並在下次需要時重新啟動,因此您不能依賴 Service Worker onfetchonmessage處理程序中的全局狀態。在這種情況下,服務工作者將有權訪問 IndexedDB API,以便在重新啟動時保持和重用。


34.什麼是 IndexedDB?

IndexedDB 是用於客戶端存儲大量結構化數據(包括文件/blob)的低級 API。此 API 使用索引來啟用此數據的高性能搜索。


35.什麼是 web storage?

Web 存儲是一種 API,它提供了一種機制,瀏覽器可以通過該機制以比使用 Cookie 更直觀的方式在用戶瀏覽器中本地存儲鍵/值對。Web 存儲提供了兩種在客戶端存儲數據的機制。

  • 本地存儲:它存儲當前來源的數據,沒有到期日期。
  • 會話存儲:存儲一個會話的數據,關閉瀏覽器選項卡時數據丟失。

36.什麼是 post message?

post message是一種啟用 Window 對象之間的跨源通信的方法。(即,在頁面和它產生的彈出窗口之間,或在頁面和嵌入其中的 iframe 之間)。通常,若且唯若頁面遵循同源策略(即頁面共享相同的協議、埠號和主機)時,允許不同頁面上的腳本相互訪問。


37.什麼是 Cookie ?

你可以在這篇文章中更詳細地了解Cookie :

https://haiyong.blog.csdn.net/article/details/117837835

cookie 是存儲在您的計算機上以供瀏覽器訪問的一段數據。Cookie 保存為鍵/值對。

例如,您可以創建一個名為 username 的 cookie,如下所示,

document.cookie = "username=Haiyong";

38.為什麼需要 Cookie ?

Cookie 用於記住有關用戶個人資料的信息(例如用戶名)。它基本上包括兩個步驟,

  • 當用戶訪問網頁時,用戶個人資料可以存儲在 cookie 中。
  • 下次用戶訪問頁面時,cookie 會記住用戶配置文件。

39.cookie 中有哪些選項 ?

以下選項可用於 cookie,

默認情況下,cookie 會在瀏覽器關閉時被刪除,但您可以通過設置到期日期(UTC 時間)來更改此行為。

document.cookie = "username=Haiyong; expires=Sat, 8 Jun 2019 12:00:00 UTC";

默認情況下,cookie 屬於當前頁面。但是您可以使用路徑參數告訴瀏覽器 cookie 所屬的路徑。

document.cookie = "username=Haiyong; path=/services";

40.你如何刪除cookie ?

您可以通過將到期日期設置為已通過日期來刪除 cookie。在這種情況下,您不需要指定 cookie 值。 例如,您可以刪除當前頁面中的用戶名 cookie,如下所示。

document.cookie = "username=; expires=Fri, 07 Jun 2019 00:00:00 UTC; path=/;";

注意:您應該定義 cookie 路徑選項以確保您刪除正確的 cookie。除非您指定路徑參數,否則某些瀏覽器不允許刪除 cookie。

希望大家能夠給海海 點讚+收藏+關注 ,你的支持是海海更新的動力!後面我會持續分享面試經驗 & 前端相關的專業知識。

最後祝大家都能找到滿意的實習和 offer!

關鍵字: