我有一条路径,我试图在最后一个/之后弹出所有内容,因此在本例中为“文件夹”,将新路径保留为 C://local/drive/folder/。
我尝试使用 pop() 弹出最后一个/,但无法将路径的第一部分作为新路径:
var path = C://local/drive/folder/folder
var newpath = path.split("/").pop();
var newpath = newpath[0]; //should be C://local/drive/folder/
我怎样才能做到这一点?
最佳答案
使用 .slice()
代替 pop()
var newpath = path.split("/").slice(0, -1).join("/");
如果您还需要最后一部分,则只需使用 .pop()
,但首先将 Array 存储在一个单独的变量中。
var parts = path.split("/");
var last = parts.pop();
var first = parts.join("/");
现在 last
包含最后一部分,first
包含最后一部分之前的所有内容。
另一种解决方案是在字符串上使用 .lastIndexOf()
。
var idx = path.lastIndexOf("/");
var first = path.slice(0, idx);
var last = path.slice(idx + 1);
关于Javascript - 数组弹出并获取数组的第一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13664883/