Baseline 2023 *
Newly available
å®å ¨ãªã³ã³ããã¹ãç¨: ãã®æ©è½ã¯ä¸é¨ã¾ãã¯ãã¹ã¦ã®å¯¾å¿ãã¦ãããã©ã¦ã¶ã¼ã«ããã¦ãå®å ¨ãªã³ã³ããã¹ã (HTTPS) ã§ã®ã¿å©ç¨ã§ãã¾ãã
File System Access API
ã® FileSystemHandle
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã¯ããã¡ã¤ã«ã¾ãã¯ãã£ã¬ã¯ããªã¼ã®ã¨ã³ããªã¼ã表ããªãã¸ã§ã¯ãã§ããè¤æ°ã®ãã³ãã«ãåãã¨ã³ããªã¼ã表ãå¯è½æ§ãããã¾ããFileSystemHandle
ãç´æ¥æ±ãå ´é¢ã¯ã»ã¨ãã©ãªããåã¤ã³ã¿ã¼ãã§ã¤ã¹ã® FileSystemFileHandle
ã FileSystemDirectoryHandle
ãæ±ãã§ãããã
以ä¸ããFileSystemHandle
ã¤ã³ã¿ã¼ãã§ã¤ã¹ããã¨ã¨ãªã£ã¦ããã¤ã³ã¿ã¼ãã§ã¤ã¹ã®ä¸è¦§ã§ãã
FileSystemFileHandle
ãã¡ã¤ã«ã¨ã³ããªã¼ã®ãã³ãã«ã表ãã¾ãã
FileSystemDirectoryHandle
ãã£ã¬ã¯ããªã¼ã¨ã³ããªã¼ã¸ã®ãã³ãã«ãæä¾ãã¾ãã
kind
èªåå°ç¨
ã¨ã³ããªã¼ã®ç¨®é¡ãè¿ãã¾ãã'file'
(対å¿ããã¨ã³ããªã¼ããã¡ã¤ã«ã®ã¨ã) ã¾ã㯠'directory'
ã§ãã
name
èªåå°ç¨
対å¿ããã¨ã³ããªã¼ã®ååãè¿ãã¾ãã
isSameEntry()
2 åã®ãã³ãã«
ãæ¯è¼ãã対å¿ããã¨ã³ããªã¼ (ãã¡ã¤ã«ã¾ãã¯ãã£ã¬ã¯ããªã¼) ãä¸è´ãããã調ã¹ã¾ãã
queryPermission()
Experimental
ç¾å¨ã®ãã³ãã«ã®ç¾å¨ã®è¨±å¯ã®ç¶æ ãåå¾ãã¾ãã
remove()
Experimental 鿍æº
ä¸å±¤ã®ãã¡ã¤ã«ã·ã¹ãã ãããã³ãã«ã表ãã¨ã³ããªã¼ãé¤å»ãããã¨ãè¦æ±ãã¾ãã
requestPermission()
Experimental
ãã¡ã¤ã«ãã³ãã«ã«ã¤ãã¦ãèªã¿åãã¾ãã¯èªã¿æ¸ãã®è¨±å¯ãè¦æ±ãã¾ãã
以ä¸ã®ã³ã¼ãã§ã¯ãã¦ã¼ã¶ã¼ã«ãã¡ã¤ã«ããã«ã¼ã§ãã¡ã¤ã«ã鏿ãããè¿ããããã³ãã«ããã¡ã¤ã«ãªã®ããã£ã¬ã¯ããªã¼ãªã®ãã調ã¹ã¾ãã
// ãã¡ã¤ã«ãã³ãã«ã¸ã®åç
§ãä¿åãã
let fileHandle;
async function getFile() {
// ãã¡ã¤ã«ããã«ã¼ãéã
[fileHandle] = await window.showOpenFilePicker();
if (fileHandle.kind === "file") {
// ãã¡ã¤ã«ã®å ´åã®ã³ã¼ããå®è¡ãã
} else if (fileHandle.kind === "directory") {
// ãã£ã¬ã¯ããªã¼ã®å ´åã®ã³ã¼ããå®è¡ãã
}
}
許å¯ãç¢ºèª / è¦æ±ãã
以ä¸ã®éåæé¢æ°ã¯ãã¦ã¼ã¶ã¼ããã¡ã¤ã«ãã³ãã«ã«èªã¿åãã¾ãã¯èªã¿æ¸ãã®è¨±å¯ãä¸ãã¦ããå ´å true
ãè¿ãã¾ãã許å¯ãä¸ãããã¦ããªãå ´åã許å¯ãè¦æ±ãã¾ãã
// fileHandle 㯠FileSystemFileHandle
// withWrite ã¯æ¸ãè¾¼ã¿ãªã true ã«è¨å®ããã boolean
async function verifyPermission(fileHandle, withWrite) {
const opts = {};
if (withWrite) {
opts.mode = "readwrite";
}
// æ¢ã«è¨±å¯ãå¾ããã¦ãããã確èªãã許å¯ãå¾ããã¦ããã° true ãè¿ã
if ((await fileHandle.queryPermission(opts)) === "granted") {
return true;
}
// ãã¡ã¤ã«æä½ã®è¨±å¯ãè¦æ±ããã¦ã¼ã¶ã¼ã許å¯ããã° true ãè¿ã
if ((await fileHandle.requestPermission(opts)) === "granted") {
return true;
}
// ã¦ã¼ã¶ã¼ã許å¯ããªãã£ãã®ã§ãfalse ãè¿ã
return false;
}
ã¨ã³ããªã¼ãæ¯è¼ãã
以ä¸ã®é¢æ°ã¯ã1 åã®ã¨ã³ããªã¼ãã¨ã³ããªã¼ã®é åã¨æ¯è¼ããä¸è´ããã¨ã³ããªã¼ããã¹ã¦åãé¤ããæ°ããé åãè¿ãã¾ãã
function removeMatches(fileEntry, entriesArr) {
const newArr = entriesArr.filter((entry) => !fileEntry.isSameEntry(entry));
return newArr;
}
仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ é¢é£æ
å ±
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4