Node模块记录-path模块(路径相关)

194 阅读1分钟
  • 个人学习记录,如有问题,欢迎各位大佬指出
  • 在新版的Node.js中,许多异步API都支持Promise方式。这意味着可以使用Promise来处理异步操作,而不再依赖于回调函数
const path = require("path");
// __dirname 当前文件所在文件夹的绝对路径 可以解决相对路径随工作台变动问题
// __filename 当前文件的绝对路径

// reslove
const newPath = path.resolve(__dirname, "./index.html");
// linux平台下__dirname直接拼接 会是 \ ,而且不能./ 否则是/Users/用户名/Desktop/demo/node./index.html
console.log("🚀 ~ __dirname:", __dirname + "index.html"); // /Users/用户名/Desktop/demo/node/index.html
console.log("🚀 ~ newPath:", newPath); //  /Users/用户名/Desktop/demo/node/index.html

// sep 分隔符
console.log("🚀 ~ path.sep:", path.sep); //  macos和windows下是 / ,linux平台下是 \


// parse 解析路径
// path.parse()
const filename = "/Users/用户名/Desktop/demo/node/path模块.js";
const parseObj = path.parse(filename);
console.log("🚀 ~ parseObj:", parseObj);
// {
//   root: '/', // 根目录
//   dir: '/Users/用户名/Desktop/demo/node', // 目录名
//   base: 'path模块.js', // 基础名称
//   ext: '.js', // 扩展名
//   name: 'path模块' // 文件名
// }

// basename() 获取路径的基础名称 传入第二个参数可获取文件名
console.log("🚀 ~ path.basename:", path.basename(filename)); // path模块.js
console.log("🚀 ~ path.basename:", path.basename(filename, ".js")); // path模块

// dirname() 获取路径的目录名
console.log("🚀 ~ path.dirname:", path.dirname(filename)); // /Users/用户名/Desktop/demo/node

// extname() 获取路径的扩展名
console.log("🚀 ~ path.extname:", path.extname(filename)); // .js