node path模块常用方法

node相关模块文档

  1. node fs模块
  2. node fs模块promise方式
var path = require('path');

/**
 * ./ 指向当前的工作路径
 * __dirname 指向被执行 js 文件的绝对路径
 */

/**
 * 获取url的最后一级
 * @param {*} url 
 * @param {*} suffix 需要忽略的后缀
 * @returns 
 */
const lastPath = (url,suffix) => {
  if (suffix) {
    return path.basename(url,suffix);
  } else {
    return path.basename(url);
  }
  // eg:
  // path.basename('/foo/bar/baz/asdf/quux.html');返回: 'quux.html'
  // path.basename('/foo/bar/baz/asdf/quux.html', '.html');返回: 'quux'
}
module.exports.lastPath = lastPath;

// 获取路径
const getPath = (url) => {
  return path.dirname(url);
  // eg:
  // path.dirname('/foo/bar/baz/asdf/quux'); 返回: '/foo/bar/baz/asdf'
}
module.exports.getPath = getPath;

// 获取文件后缀
const getSuffix = (url) => {
  return path.extname(url);
  // eg:
  // path.dirname('/foo/bar/baz/asdf/quux.html'); 返回: '.html'
  // path.dirname('/foo/bar/baz/asdf/quux'); 返回: ''
}
module.exports.getSuffix = getSuffix;

// 判断是否为绝对路径
const isAbsolute = (url) => {
  return path.isAbsolute(url);
  // eg:
  // path.isAbsolute('/baz/..');  // true
  // path.isAbsolute('qux/');     // false
}
module.exports.isAbsolute = isAbsolute;

// 组装绝对路径
const join = (...url) => {
  return path.join(...url);
  // path.join('/foo', 'bar', 'baz/asdf', 'quux', '..')
  // 返回:
  // '/foo/bar/baz/asdf'
}
module.exports.join = join;

// 分解路径
const parse = (url) => {
  return path.parse(url);
  // path.parse('/home/user/dir/file.txt');
  // 返回:
  // { root: '/',
  //   dir: '/home/user/dir',
  //   base: 'file.txt',
  //   ext: '.txt',
  //   name: 'file' }
}
module.exports.parse = parse;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值