我想弄清楚如何确定URL中有多少路径。例如,example.com / example / hello /将返回2,example.com / example将返回1,example.com / example / anotherexample / hello将返回3。如何在Javascript中做到这一点并使其起作用URL是否以/结尾?
因此,我们可以通过首先考虑路径是什么来解决这个问题。从根本上讲,路径是一种访问资源的方法,通常可以通过文件夹到达该路径。我们可以使用
获得位置的pathname
window.location.pathname
对于我们当前的URL,它将返回
/questions/62353998/how-can-you-see-how-many-paths-a-url-has
或
/questions/62353998/how-can-you-see-how-many-paths-a-url-has/
因此,我们可以通过修剪“ /”路径(为空)并将其计数来获得确切的答案。使用javascript,我们可以通过执行]获得此数字
window.location.pathname.split("/").filter(a => a.length > 0).length
打破现状,我们
获取路径名(window.location.pathname
)
将路径拆分到我们到达的目录中(.split("/")
)
过滤出空路径""
(.filter(a => a.length > 0)
)
通常,当然也可以做一些复杂的正则表达式
window.location.href.split(/[?#]/).shift().match(/\/[^/]+?/g).length
((从https://stackoverflow.com/a/36983925/4166655删除了最后一个代码段)