javascript - JS : Most optimized way to remove a filename from a path in a string?

标签 javascript optimization

我的字符串格式如下:
path/to/a/filename.txt

现在我想做一些字符串操作,这使我能够非常有效地从此代码中删除“filename.txt”部分。换句话说,我希望我的字符串变成这样:
路径/到/a/

最有效的方法是什么?目前我正在拆分字符串并重新连接除最后一个元素之外的单独元素,但我觉得这是一种非常非常低效的方法。这是我当前的低效代码:

res.getPath = function(file)
{
  var elem = file.split("/");
  var str = "";
  for (var i = 0; i < elem.length-1; i++)
    str += elem[i] + "/";
  return str;
}

最佳答案

使用 lastIndexOf() 找到最后一个斜杠的位置,并使用 substring() 获取斜杠之前的部分。

str.substring(0, str.lastIndexOf("/"));

关于javascript - JS : Most optimized way to remove a filename from a path in a string?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2187256/

相关文章:

c# - MVC4 加载缓慢我该怎么办?

java - 热点循环优化——具体示例

optimization - 在 numpy 中向量化 linalg.eig()

javascript - 如何检测用户登录 Facebook?

javascript - 使用按钮启动/停止 setTimeout 并防止点击次数越多计数速度越快

javascript - 如何根据另一个对象分配对象属性

algorithm - 快速检测与祖先同级的相同节点

go - 为什么 Go 对数组的范围循环有运行时开销?

javascript - 验证提交时页面中是否选中单选按钮 : AngularJs

javascript - 如何使用 php、ajax 和 jquery 将数据库中的设置值调用到 <label> 中