JS: Большая часть оптимизированного способа удалить имя файла из пути в строке?

См. последний пример на странице https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference:Global_Objects:Date :

/* Use a function for the exact format desired... */
function ISODateString(d) {
    function pad(n) {return n<10 ? '0'+n : n}
    return d.getUTCFullYear()+'-'
         + pad(d.getUTCMonth()+1)+'-'
         + pad(d.getUTCDate())+'T'
         + pad(d.getUTCHours())+':'
         + pad(d.getUTCMinutes())+':'
         + pad(d.getUTCSeconds())+'Z'
}

var d = new Date();
console.log(ISODateString(d)); // Prints something like 2009-09-28T19:03:12Z

54
задан DaVince 2 February 2010 в 10:11
поделиться

4 ответа

Используйте lastIndexOf (), чтобы найти позицию последней косой черты и получить часть перед косой чертой с помощью substring ().

str.substring(0, str.lastIndexOf("/"));
110
ответ дан 7 November 2019 в 07:52
поделиться

Если Вы используете NodeJS:

const path = require("path")
const removeFilePart = dirname => path.parse(dirname).dir

removeFilePart("/a/b/c/d.txt")
// Returns "/a/b/c"
0
ответ дан 7 November 2019 в 07:52
поделиться
function splitPath(path) {
  var dirPart, filePart;
  path.replace(/^(.*\/)?([^/]*)$/, function(_, dir, file) {
    dirPart = dir; filePart = file;
  });
  return { dirPart: dirPart, filePart: filePart };
}

там лучше

0
ответ дан 7 November 2019 в 07:52
поделиться
-

Как насчет этого:

"path/to/a/filename.txt".split("/").slice(0, -1).join("/")+"/"
10
ответ дан 7 November 2019 в 07:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: