• NodeJS3-1基础API----Path(路径)


    path 和路径有关的操作

    Path(路径) 

    path 模块提供用于处理文件路径和目录路径的实用工具。 它可以使用以下方式访问

    const path = require('path');

     1. path.normalize(path) [就是把路径改成比较标准的路径格式]

    // 把路径改成比较标准的路径格式
    const {normalize} = require('path')
    // const normalize = require('path').normalize
    console.log(normalize('./user//local/bin'));
    console.log(normalize('/user//local/../bin'));

       运行结果

     2.path.join([...paths])  拼接,可以拼接路径,也是规范的拼接

    const {join} = require('path')
    console.log(join('/user','local','bin/'));
    console.log(join('/user','../local','bin/'));

    运行结果

    3.path.resolve([...paths])   path.resolve() 方法将路径或路径片段的序列解析为绝对路径。

    const{resolve} = require('path')
    //相对路径帮你解释成绝对路径
    console.log(resolve('./'));

    运行结果

    4.names相关的(path.basename(path[, ext]) & path.dirname(path) &path.extname(path))

    path.basename(path[, ext])     文件扩展名

    path.dirname(path)                   path 的目录名

    path.extname(path)                  path 的扩展名

    const {basename,dirname,extname} =require('path')
    const filePath = '/user/local/bin/no.txt'
    //所在文件名
    console.log(basename(filePath));
    //所在路径
    console.log(dirname(filePath));
    //拓展名
    console.log(extname(filePath));

    运行结果

    5.path.parse(path) 和  path.format(pathObject)

    path.parse() 方法返回一个对象,其属性表示 path 的重要元素

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

    const {parse,format} = require('path')
    const filePath ='/user/local/node_modules/n/package.json'
    // parse 分析一下路径,返回对象
    const ret = parse(filePath)
    console.log(ret);
    // format把对象返回成路径
    console.log(format(ret));

    运行结果:

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

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

    6.跟操作系统有关的(sep,delimiter,win32,posix)

    const {sep, delimiter, win32 ,posix} = require('path')
    //路径的分隔符
    console.log('sep',sep);
    console.log('posix sep',posix.sep);
    console.log('PATH',process.env.PATH);
    //delimiter,path的分隔符
    console.log('delimiter',delimiter);
    console.log('posix delimiter',posix.delimiter);

    运行结果

    可以获取路径的方法(3种)

    const path  = require('path');
    const mod = require('./02_cusmod.js');
    console.log(mod.testVar);
    console.log('__dirname    ',__dirname);
    console.log('process.cwd()',process.cwd());
    console.log('./           ',path.resolve('./'));

    运行结果

    总结

    • _dirname,_filename 总是返回文件的绝对路径(物理磁盘上的路径)
    • processn.cwd()总是返回执行node命令所在文件夹[当前用户在哪里启动的叫脚本]
    • ./  在require方法中总是相对当前文件所在文件夹
    • ./  在其他地方和process.cwd()一样,相对node启动文件夹
  • 相关阅读:
    HDU 1874 畅通工程续(dijkstra)
    HDU 2112 HDU Today (map函数,dijkstra最短路径)
    HDU 2680 Choose the best route(dijkstra)
    HDU 2066 一个人的旅行(最短路径,dijkstra)
    关于测评机,编译器,我有些话想说
    测评机的优化问题 时间控制
    CF Round410 D. Mike and distribution
    数字三角形2 (取模)
    CF Round410 C. Mike and gcd problem
    CF Round 423 D. High Load 星图(最优最简构建)
  • 原文地址:https://www.cnblogs.com/chorkiu/p/11417173.html
Copyright © 2020-2023  润新知