717 Stimmen

Wie kann ich Dateierweiterungen mit JavaScript erhalten?

Siehe Code:

var file1 = "50.xsl";
var file2 = "30.doc";
getFileExtension(file1); //returns xsl
getFileExtension(file2); //returns doc

function getFileExtension(filename) {
    /*TODO*/
}

24voto

Dima Punkte 568
function getExt(filename)
{
    var ext = filename.split('.').pop();
    if(ext == filename) return "";
    return ext;
}

9 Stimmen

Return (ext===Dateiname) ? '' : ext;

18voto

Pono Punkte 10412
var extension = fileName.substring(fileName.lastIndexOf('.')+1);

14voto

Jakob Sternberg Punkte 1700

Wenn Sie mit Web-Urls arbeiten, können Sie diese verwenden:

function getExt(filepath){
     return filepath.split("?")[0].split("#")[0].split('.').pop();
}

getExt("../js/logic.v2.min.js") // js
getExt("http://example.net/site/page.php?id=16548") // php
getExt("http://example.net/site/page.html#welcome.to.me") // html
getExt("c:\\logs\\yesterday.log"); // log

Demo: https://jsfiddle.net/squadjot/q5ard4fj/

0 Stimmen

Ihre Lösung gefällt mir sehr gut. Sie macht so viel mit so wenig. Ich werde sie verwenden.

9voto

var parts = filename.split('.');
return parts[parts.length-1];

0 Stimmen

Dies würde dazu führen, dass eine falsche Dateierweiterung erfasst wird, wenn Dateien etwa so benannt sind: "2021.06.28 - MeinBericht.csv"

8voto

Joe Scylla Punkte 701
function file_get_ext(filename)
    {
    return typeof filename != "undefined" ? filename.substring(filename.lastIndexOf(".")+1, filename.length).toLowerCase() : false;
    }

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X