Skip to content

Path Module

ทำไม path ถึงสำคัญ?

เวลาทำงานกับไฟล์หรือโฟลเดอร์ใน Node.js ต้องต่อ path, แยกชื่อไฟล์, หรือแปลง path ให้เหมาะกับแต่ละระบบปฏิบัติการ path module ช่วยให้โค้ดของคุณ portable และปลอดภัยจาก bug ที่เกิดจาก path ผิด

  • ถ้าไม่ใช้ path.join อาจเกิด path ผิดบน Windows/Unix ได้ง่าย
  • มือใหม่จะเข้าใจการจัดการไฟล์และโฟลเดอร์ในทุกระบบ
  • path ใช้งานง่ายและจำเป็นกับทุกโปรเจกต์ที่เกี่ยวกับไฟล์

แนะนำ Path module

path เป็น built-in module ของ Node.js สำหรับจัดการ path ของไฟล์และโฟลเดอร์ เช่น การรวม path, การแยก extension, การ normalize path ฯลฯ โดยไม่ต้องกังวลเรื่อง platform (Windows/Unix)

ฟังก์ชันหลักที่ใช้บ่อย

path.join([...paths])

รวม path หลายส่วนให้เป็น path เดียวอย่างถูกต้อง

js
const path = require("path");
console.log(path.join("foo", "bar", "baz.txt")); // foo/bar/baz.txt

path.resolve([...paths])

แปลง path หลายส่วนให้เป็น absolute path

js
console.log(path.resolve("foo", "bar.txt")); // /current/dir/foo/bar.txt

path.basename(p)

คืนชื่อไฟล์จาก path

js
console.log(path.basename("/folder/file.txt")); // file.txt

path.extname(p)

คืนค่านามสกุลไฟล์

js
console.log(path.extname("index.html")); // .html

path.dirname(p)

คืน path ของโฟลเดอร์

js
console.log(path.dirname("/folder/file.txt")); // /folder

กรณีใช้งานจริง

  • สร้าง path ของไฟล์สำหรับอ่าน/เขียนไฟล์โดยไม่ต้องกังวล OS
  • สร้าง path สำหรับ static file ใน web server
  • ตรวจสอบนามสกุลไฟล์ก่อน upload

อ้างอิง