比如一个路径为 A/B/C/ 的文件夹路径
我想得到如下:
[{name:"A",path:"A/"},
{name:"B",path:"A/B/",
{name:"C",path:"A/B/C/"
]
我能做的就是先把路径 用split("/") 得到一个数组。然后做个循环。
但好像有个什么reduce 递归的方法可以更简洁的写出上面的需求呢?
比如一个路径为 A/B/C/ 的文件夹路径
我想得到如下:
[{name:"A",path:"A/"},
{name:"B",path:"A/B/",
{name:"C",path:"A/B/C/"
]
我能做的就是先把路径 用split("/") 得到一个数组。然后做个循环。
但好像有个什么reduce 递归的方法可以更简洁的写出上面的需求呢?
'A/B/C/'.split('/').filter(s=>s).map((item,index,array)=>({name:item,path:array.slice(0,index+1).join('/') + '/'}))
//[{name: "A", path: "A/"},{name: "B", path: "A/B/"},{name: "C", path: "A/B/C/"}]
13 回答13.1k 阅读
8 回答3k 阅读
3 回答1.5k 阅读✓ 已解决
2 回答5.3k 阅读✓ 已解决
5 回答1.6k 阅读
7 回答2.3k 阅读
3 回答2.4k 阅读✓ 已解决
不过我总感觉用正则可能还有更简短的写法。