Как мне изменить расширение файла с помощью JavaScript - PullRequest
21 голосов
/ 10 мая 2011

Кто-нибудь знает простой способ изменить расширение файла в Javascript?

Например, у меня есть переменная с "first.docx", но мне нужно изменить ее на "first.html".

Ответы [ 4 ]

48 голосов
/ 10 мая 2011

Это изменит строку , содержащую имя файла;

file = file.substr(0, file.lastIndexOf(".")) + ".htm";

Для ситуаций, когда расширение может отсутствовать:

var pos = file.lastIndexOf(".");
file = file.substr(0, pos < 0 ? file.length : pos) + ".htm";
10 голосов
/ 10 мая 2011
file = file.replace(/\.[^\.]+$/, '.html');
1 голос
/ 23 декабря 2017

Это, вероятно, не получит много голосов, но я не смог устоять.

Этот код будет иметь дело с крайним случаем, когда файл может не иметь расширения уже (в этом случае он его добавит),Он использует «трюк тильды»

function changeExt (fileName, newExt) {
  var _tmp
  return fileName.substr(0, ~(_tmp = fileName.lastIndexOf('.')) ? _tmp : fileName.length) + '.' + newExt
}
0 голосов
/ 10 мая 2011
var file = "first.docx";
file = file.split(".");
file = file[0]+".html";
...