zoukankan      html  css  js  c++  java
  • 详解path.resolve 以及path.join

    一、基础知识

    // 1、path为node自带的模块
    const path = require('path')
    
    // 2、当前文件路径与当前工作目录
    //例如:1、 E:vue2-starter>node ../path.js(E:vue2-starter表示工作目录,E:path.js则是文件路径)
    // 2、 E:>node path.js(E:表示工作目录路径,E:path.js是文件路径)
    
    
    //3、node自带的全局变量:__dirname __filename(与工作目录无关)
    // index.js 位于E:\, 运行在E:下运行node index(与在E:vue2-starter运行node ../index并无不同)
    console.log(__dirname) // e:\,文件目录名
    console.log(__filename) // e:index.js ,文件路径
    
    //4、绝对路径, 可以用path.isAbsolute(path)进行判断
    //绝对路径: ‘/app’(在windows下会在前面加上盘符)、‘C:appstate’(windows)’
    //非绝对路径:‘app/state’、 ‘.’
    

    二、path.resolve([...paths])

    解释:path.resolve

    简要理解:1、给定的路径序列会从右到左进行处理,后面的每个 path 会被追加到前面,直到构造出绝对路径

    2、如果在处理完所有给定的 path 片段之后还未生成绝对路径,则会在前面添加当前工作目录

    3、生成的路径会被规范化,并且尾部的斜杠会被删除(除非路径被解析为根目录)。

    4、如果没有传入 path 片段,则 path.resolve() 会返回当前工作目录的绝对路径。

    console.log(path.resolve('/index')) // 盘符:index
    console.log(path.resolve('index')) // 当前工作目录的绝对路径/index
    console.log(path.resolve('/app', 'index/')) // 盘符:appindex
    console.log(path.reolve())// 当前工作目录的绝对路径
    

    三、path.join([...paths])

    解释:path.join

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

    path.join('/目录1', '目录2', '目录3/目录4', '目录5', '..');
    // 返回: '/目录1/目录2/目录3/目录4'(windows下:盘符:录1目录2目录3目录4)
    
  • 相关阅读:
    【毒链剖分】
    线段树——从入门到入土
    二分图最大匹配——找老婆问题(确信)
    【AC自动机(有了这个我就能AC了吗)】
    社交距离II
    【扩展KMP(Z函数)(这个区间看着不是很爽)】
    【KMP算法(烤馍片,真香)】
    【最短路系列问题】
    最近公共祖先LCA(我肯定是你的LCA)
    【并查集(又在乱牵线了)】
  • 原文地址:https://www.cnblogs.com/dayofcoder/p/13699124.html
Copyright © 2011-2022 走看看