Javascript - 数组弹出并获取数组的第一部分

标签 javascript arrays split

我有一条路径,我试图在最后一个/之后弹出所有内容,因此在本例中为“文件夹”,将新路径保留为 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/

相关文章:

javascript - 使用 JSF ajax 请求刷新 URL

JavaScript 项目结构

python - 对数据帧中的列执行 str.split 会返回SettingWithCopyWarning

javascript - JS split() 正则表达式与单个结果数组的三个匹配

javascript - 使用nodejs中的fast-csv根据列值将csv文件拆分为多个csv文件

javascript - 寻找解释 inputfile.click() 的文档

python - 反向索引数组

arrays - 将数组内容复制到程序集中的另一个数组

javascript - 如何从 div 中获取值并在数组中使用它

r - 按值分割data.frame