zoukankan      html  css  js  c++  java
  • nodejs-path常用api

    path.basename(path[, ext]) 

    path.basename() 方法会返回 path 的最后一部分(返回文件名称[.ext]),类似于 Unix 的 basename 命令。 尾部的目录分隔符会被忽略,参见 path.sep

    如果 path 不是字符串、或给定了 ext 但不是字符串,则抛出 TypeError

    path.basename('/目录1/目录2/文件.html');
    // 返回: '文件.html'
    
    path.basename('/目录1/目录2/文件.html', '.html');
    // 返回: '文件'
    path.basename('/目录1/目录2/文件.HTML', '.html');
    // 返回: '文件.HTML'
     

    path.dirname(path)

    path.dirname() 方法会返回 path 的目录名,类似于 Unix 的 dirname 命令。 尾部的目录分隔符会被忽略,参见 path.sep

    如果 path 不是字符串,则抛出 TypeError

    path.dirname('/目录1/目录2/目录3');
    // 返回: '/目录1/目录2'

    path.extname(path)

    返回 path 的扩展名

    如果在 path 的最后一部分中没有 .,或者如果 path 的基本名称(参见 path.basename())除了第一个字符以外没有 .,则返回空字符串。

    如果 path 不是字符串,则抛出 TypeError

    path.extname('index.html');
    // 返回: '.html'
    
    path.extname('index.coffee.md');
    // 返回: '.md'
    
    path.extname('index.');
    // 返回: '.'
    
    path.extname('index');
    // 返回: ''
    
    path.extname('.index');
    // 返回: ''
    
    path.extname('.index.md');
    // 返回: '.md'

    path.format(pathObject)

    path.format() 方法从对象返回路径字符串。 与 path.parse() 相反。

    当为 pathObject 提供属性时,注意以下组合,其中一些属性优先于另一些属性:

    • 如果提供了 pathObject.dir,则忽略 pathObject.root
    • 如果 pathObject.base 存在,则忽略 pathObject.ext 和 pathObject.name

    `[${dir} or ${root}]${path.sep}[${base} or ${name}.${ext}]`

    在POSIX上:

    // `root` 会被忽略。
    path.format({
      root: '/ignored',
      dir: '/home/user/dir',
      base: 'file.txt'
    });
    // 返回: '/home/user/dir/file.txt'
    
    // `ext` 将被忽略。
    path.format({
      root: '/',
      base: 'file.txt',
      ext: 'ignored'
    });
    // 返回: '/file.txt'
    
    // 如果未指定 `base`,则使用 `name` + `ext`。
    path.format({
      root: '/',
      name: 'file',
      ext: '.txt'
    });
    // 返回: '/file.txt'

    在 Windows 上:

    path.format({
      dir: 'C:\path\dir',
      base: 'file.txt'
    });
    // 返回: 'C:\path\dir\file.txt'

    path.parse(path) 

    path.parse() 方法会返回一个对象,其属性表示 path 的有效元素。 尾部的目录分隔符会被忽略,参见 path.sep

    返回的对象具有以下属性:

    path.isAbsolute(path)

    • 检测 path 是否为绝对路径

    如果给定的 path 是零长度字符串,则返回 false

    path.relative(from, to)

    返回to相对于form的相对路径

    path.join([...paths])

    path.join() 方法会将所有给定的 path 片段连接到一起(使用平台特定的分隔符作为定界符),然后规范化生成的路径。

    长度为零的 path 片段会被忽略。 如果连接后的路径字符串为长度为零的字符串,则返回 '.',表示当前工作目录。

    path.join('/目录1', '目录2', '目录3/目录4', '目录5', '..');
    // 返回: '/目录1/目录2/目录3/目录4'
    
    path.join('目录1', {}, '目录2');
    // 抛出 'TypeError: Path must be a string. Received {}'
  • 相关阅读:
    法师 南邮NOJ网络赛2083
    法师 南邮NOJ网络赛2083
    法师 南邮NOJ网络赛2083
    水NOJ Duplicate Removal
    水NOJ Duplicate Removal
    水NOJ Duplicate Removal
    水NOJ Duplicate Removal
    【POJ】3630 Phone List
    【POJ】2503 Babelfish
    【POJ】1451 T9
  • 原文地址:https://www.cnblogs.com/baixinL/p/14223002.html
Copyright © 2011-2022 走看看