chdyiboke / weekly

issue and share weekly
5 stars 1 forks source link

path.join 和 path.resolve的区别? #73

Open chdyiboke opened 3 years ago

chdyiboke commented 3 years ago

写代码的时候有时候使用path.join(dirname,'dist')有时候用path.resolve(dirname,'dist'),都是能拼接出来一个绝对路径,但是具体有什么区别呢?

chdyiboke commented 3 years ago

path.join()和path.resolve()区别 1、join是把各个path片段连接在一起, resolve把‘/’当成根目录

path.join('/a', '/b') // Outputs '/a/b'
path.resolve('/a', '/b') // Outputs '/b'

2、join直接拼接字段,resolve解析路径并返回

path.join("a", "b1", "..", "b2")
console打印会得到"a/b2"
path.resolve("a", "b1", "..", "b2")
console打印得到"/home/myself/node/a/b2"

__dirname 当前模块的目录名。