了解什麼是URL物件以及如何使用它。

URL是一個用於使用Blob來操作URL的命名空間,並提供了2個靜態方法:

  • URL.createObjectURL()
  • URL.revokeObjectURL()

使用URL.createObjectURL()函數可根據Blob生成URL:

const myURL = URL.createObjectURL(aBlob)

一旦你有了Blob URL,你可以通過以下代碼從內存中銷毀它:

URL.revokeObjectURL(myURL)

除此之外,URL還通過其構造函數提供了一個完全不同的功能,它可以用來創建URL。你可以這樣調用它:

const currentUrl = new URL(window.location.href)

現在,currentUrl有一組屬性,你可以使用它來檢查URL的各個部分:

  • hash:哈希片段
  • host:域名+端口
  • hostname:域名
  • href:包含整個URL
  • origin:協議+域名+端口
  • password
  • pathname
  • port
  • protocol
  • search
  • searchParams
  • username

這些都是URL的常見部分。你可以修改其中任何一部分,除了originsearchParams,它們是只讀的。你可以通過調用toString()方法或引用href屬性來生成新的URL字符串。