今天面试遇到一个问题,不知道该怎么做,求教大佬
有相对路径 /A/B/../C/D/../E
使用js获取绝对路径 答案应该是 /A/C/E
不知道怎么用js计算出来
var str = "/A/B/../C/D/../E"
var str_arr = str.split("/")
for (var i = 0; i < str_arr.length; i++) {
if(str_arr[i] == '..'){
str_arr.splice(i-1,2)
}
}
var str2 = str_arr.join('/')
console.log(str2)
是考算法吗?不是的话,直接用Node.js的API即可。
实现的话,先以/分割成数组,然后遍历做栈入栈出即可。