Bekerja dengan jalur file di Node.js

Selesai

Sebagai pengembang baru di Tailwind Traders, Anda perlu tahu cara mengelola jalur ke file dan folder. Jika Anda memiliki banyak file atau folder, membuat jalur secara manual akan membosankan. Node.js menyediakan beberapa konstanta dan utilitas bawaan untuk mempermudah jalur file.

Tentukan direktori saat ini dengan __dirname

Terkadang, Anda tidak tahu direktori mana yang dijalankan program Anda. Anda hanya ingin menggunakan jalur direktori saat ini.

📂 stores
    📂 201
        📂 sales

Node.js memperlihatkan jalur lengkap pada direktori saat ini melalui konstanta __dirname.

console.log(__dirname);

Jika Anda menjalankan kode tersebut dari folder penjualan dalam struktur folder berikut, nilainya _dirname adalah:

/stores/201/sales

Bekerja dengan jalur dengan modul jalur

Jalur adalah subjek yang sering muncul sehingga Node.js menyertakan modul yang disebut jalur khususnya untuk bekerja dengan jalur.

Sama seperti modul fs, modul jalur dikirimkan bersama Node.js dan tidak perlu diinstal. Anda hanya perlu menandainya di bagian atas file Anda.

const path = require("path");

Menggabungkan jalur dengan path.join

Modul jalur bekerja dengan konsep jalur file dan folder, yang hanya berupa string. Misalnya, jika Anda ingin mendapatkan jalur ke folder stores/201, Anda dapat menggunakan modul jalur untuk melakukannya.

const currentPath = path.join("stores", "201");
console.log(currentPath); // stores/201

const fullPath = path.join(__dirname, "stores", "201");
console.log(fullPath); // /nodejs-files/stores/201

Alasan mengapa Anda menggunakan modul jalur daripada menggabungkan string adalah karena program Anda mungkin dijalankan di Windows atau Linux. Modul jalur memformat jalur dengan benar untuk sistem operasi apa pun yang dijalankannya. Dalam contoh sebelumnya, path.join akan mengembalikan stores\201 di Windows, dengan garis miring terbalik, bukan garis miring.

Menentukan ekstensi nama file dengan path.extname

Modul jalur juga dapat mengidentifikasi ekstensi nama file. Jika Anda memiliki file dan ingin mengidentifikasi apakah itu file JSON, Anda dapat menggunakan metode path.extname.

console.log(path.extname("sales.json"));

Outputnya adalah:

.json

Tip

Modul jalur tidak mempermasalahkan sesuatu itu benar-benar ada atau tidak. Jalur bersifat konseptual, bukan fisik. Jalur hanya membuat dan mengurai string untuk Anda.

Dapatkan semua yang perlu Anda ketahui tentang file atau jalur

Modul jalur berisi banyak metode berbeda yang melakukan berbagai hal. Namun, Anda bisa mendapatkan sebagian besar informasi yang Anda perlukan tentang jalur atau berkas dengan menggunakan metode parse. Metode ini mengembalikan objek yang berisi: direktori saat ini tempat Anda berada, nama file, ekstensi nama file, dan bahkan nama file tanpa ekstensi.

const currentPath = path.parse("stores/201/sales.json")
console.log(currentPath);

const fullPath = path.join(__dirname, "stores", "201", "/sales.json");
console.log(path.parse(fullPath));

Outputnya adalah:

{
  root: '',
  dir: 'stores/201',
  base: 'sales.json',
  ext: '.json',
  name: 'sales'
}
{
  root: '/',
  dir: '/workspaces/node-essentials/nodejs-files/stores/201',
  base: 'sales.json',
  ext: '.json',
  name: 'sales'
}

Ada banyak metode utilitas yang lebih berguna pada modul jalur , tetapi metode yang dijelaskan di sini adalah konsep inti yang kemungkinan paling sering Anda gunakan. Pada latihan berikutnya, Anda akan menggunakan modul jalur untuk menyusun jalur dan mengidentifikasi file .json.