我使用path.join (__dirname, ...)
从节点js获取绝对路径。
但我不知道为什么path.join比字符串操作更好? like: __dirname + path...
最近我了解到ES2015脚本支持"模板文字"语法。
那么,这三种情况中哪一种最好?当然,它似乎使用了很多path.join。我不在乎别人是否经常使用它,但我想知道为什么我使用path.join。
案例1:path.join
path.join(__dirname, 'public')
案例2:字符串操作
__dirname + '/public'
案例3:模板文字
`${__dirname}/public`
答案 0 :(得分:0)
path.join()
提供了一些其他方法都无法提供的功能。
它知道当前平台的路径分隔符是什么,它在Windows上与其他平台不同。因此,使用path.join()
编写跨平台代码更容易,而无需编写任何额外代码。
它在各个部分之间插入一个且只有一个路径分隔符,因此如果您正在使用变量,您甚至不必知道您的变量是否已包含路径分隔符,而不是{{1}将检查并“做正确的事”。
只需传递两个以上的参数即可连接多个部分。
因此,如果您不关心任何这些优点,那么请随意使用字符串添加或模板文字。
关于何时使用模板文字以及何时使用字符串添加,这是一个完全独立的讨论。这主要是你个人的意见 - 没有“正确”的答案。一般来说,我发现模板文字要使代码更具可读性,但有时候使用字符串添加是有意义的,例如在构建包含多个不同代码段或循环的字符串时。