Какова цель свойства webkitRelativePath в объекте File?

Если вы распечатаете объект File в консоли Chrome с чем-то простым:

<input type="file" onchange="console.info(this.files);" />

вы увидите среди других свойств всегда пустое свойство webkitRelativePath:

fileName: "07.png"
fileSize: 33022
lastModifiedDate: Date
name: "07.png"
size: 33022
type: "image/png"
webkitRelativePath: ""
__proto__: File

Что это за цель? И как это можно использовать?

Ответ 1

Он заполняется при использовании атрибута webkitdirectory при вводе файла:

<input type="file" webkitdirectory>

Он работает только в Chrome. Это позволяет пользователю выбирать папку, а не файлы, и каждый файл считывается рекурсивно. webkitRelativePath содержит относительный путь файла в иерархии.

Там есть демо здесь.