戻る

createObjectURL
createObjectURL

URL.createObjectURL()は、
ブラウザのメモリ上にあるFileオブジェクトやBlobオブジェクトを参照するための、
一時的なURLを生成するメソッドです。



[サンプル]
copy
const videoFile = document.getElementById('videoFile');
const video = document.getElementById('video');

videoFile.addEventListener('change', (event) => 
{
	const file = event.target.files[0];
	if (file) 
	{
		const url = URL.createObjectURL(file);
		video.src = url;
		video.load();
		video.onended = () => 
		{
			URL.revokeObjectURL(url);
		};
	}
});

<input type="file" accept="video/*" id="videoFile">
accept="video/*"
ファイルの種類を動画に設定しています。

const url = URL.createObjectURL(file);
ブラウザのメモリ上のリソースを指す「オブジェクトURL(Blob URL)」を作成します。
createObjectURL()で生成されたオブジェクトURLは、
ページのドキュメントがアンロードされるまで、
ブラウザによってメモリに保持されます。

video.src = url;
生成したオブジェクトURLを設定します。

URL.revokeObjectURL(url);
不要になった(生成したURLが不要になった時点で)オブジェクトURLを解放します。
revokeObjectURLを実行しないままオブジェクトURLを使い続けると、
解放されないメモリが蓄積され、
メモリリークにつながる可能性があります。
オブジェクトURLはガベージコレクションの対象ではないため、手動で解放する必要があります。
タブを閉じたときは自動的に解放されます。



戻る



著作権情報
ホームページおよプリ等に掲載されている情報等については、いかなる保障もいたしません。
ホームページおよびアプリ等を通じて入手したいかなる情報も複製、販売、出版または使用させたり、
または公開したりすることはできません。
当方は、ホームペーよびアプリ利用したいかなる理由によっての障害等が発生しても、
その結果ホームページおよびアプリ等を利用された本人または他の第三者が被った損害について
一切の責任を負わないものとします。