В Deno, инновационной среде выполнения JavaScript, доступ к текущему каталогу является обычной задачей при работе с операциями файловой системы. В этой статье мы рассмотрим несколько методов получения текущего каталога в Deno, а также примеры кода. Давайте погрузимся!
Метод 1: использование функции Deno.cwd()
Самый простой способ получить текущий каталог в Deno — использовать функцию Deno.cwd(). Он возвращает обещание, которое разрешается в текущий путь к рабочему каталогу.
import { cwd } from "https://deno.land/std/fs/mod.ts";
const currentDirectory = await cwd();
console.log("Current Directory:", currentDirectory);
Метод 2: использование Deno.execPath
Другой метод предполагает использование свойства Deno.execPath, которое представляет собой абсолютный путь к выполняющемуся в данный момент скрипту, включая имя файла скрипта. Извлекая путь к каталогу из Deno.execPath, мы можем получить текущий каталог.
const currentDirectory = Deno.execPath().split("/").slice(0, -1).join("/");
console.log("Current Directory:", currentDirectory);
Метод 3: использование import.meta.url
При работе с модулями ES в Deno свойство import.meta.urlпредоставляет URL-адрес текущего модуля. Извлекая путь к каталогу из import.meta.url, мы можем определить текущий каталог.
const currentDirectory = new URL(".", import.meta.url).pathname;
console.log("Current Directory:", currentDirectory);
Метод 4: получение Deno.cwdSync()
Если синхронное поведение предпочтительнее, Deno также предоставляет синхронную версию Deno.cwd()под названием Deno.cwdSync(). Он возвращает текущий рабочий каталог напрямую, без использования обещаний.
import { cwdSync } from "https://deno.land/std/fs/mod.ts";
const currentDirectory = cwdSync();
console.log("Current Directory:", currentDirectory);
В этой статье мы рассмотрели несколько методов получения текущего каталога в Deno. Независимо от того, предпочитаете ли вы асинхронный или синхронный подход, используя такие функции, как Deno.cwd(), Deno.execPathили import.meta.url, вы можете легко получить текущий путь к каталогу. Поняв эти методы, вы будете лучше подготовлены к эффективной работе с операциями файловой системы Deno.
Не забудьте выбрать метод, который лучше всего подходит для вашего конкретного случая использования, и используйте возможности Deno для своих проектов JavaScript.