URL: createObjectURL() 静的メソッド
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
createObjectURL()
は URL
インターフェイスの静的メソッドで、引数で指定されたオブジェクトを表す URL を含む文字列を生成します。
URL の寿命は、それを作成したウィンドウ内の document
と結び付けられています。 新しいオブジェクト URL は、指定された File
オブジェクトか Blob
オブジェクトを表します。
オブジェクト URL を解放するには、 revokeObjectURL()
を呼び出してください。
メモ: この機能はメモリーリークを生み出す可能性があるため、サービスワーカー内で利用することはできません。
構文
URL.createObjectURL(object)
引数
object
-
オブジェクト URL を生成するための
File
,Blob
,MediaSource
のいずれかのオブジェクトです。
返値
object
で指定された内容を参照するために使用されるオブジェクト URL の入った文字列です。
例
オブジェクト URL で画像を表示を参照してください。
使用上のメモ
メモリー管理
すでにオブジェクト URL が生成されている場合でも、 createObjectURL()
を呼び出す度に、新しいオブジェクト URL が生成されます。 必要がなくなったら URL.revokeObjectURL_static
を呼び出して、それぞれを解放してください。
ブラウザーは、文書がアンロードされた際にこれらのオブジェクト URL をメモリーから解放します。しかし、性能とメモリー使用を考慮すると、明示的にアンロードできる安全な機会があるならば、そうするべきです。
メディアストリームのオブジェクト URL の使用
古いバージョンの Media Source 仕様書では、 <video>
要素にストリームを添付するには MediaStream
にオブジェクト URL を生成する必要があるとしてます。 これはもう必要なく、ブラウザーはこのようにする対応を削除してきています。
警告:
もし createObjectURL()
でメディア要素にストリームを割り当てるコードが残っているのであれば、単純に srcObject
を直接 MediaStream
に設定するよう更新する必要があります。
仕様書
Specification |
---|
File API # dfn-createObjectURL |
ブラウザーの互換性
BCD tables only load in the browser