我正在获取包含来自 html 输入的类型的文件名,
var file = jQuery('#attachment')[0].files[0];
var fileType = file.name.substr(file.name.indexOf(".") + 1);
如果文件名是 FILE.TYPE,则效果很好,但如果文件名是 FILE.Name.TYPE,则它无法正常工作。
如何确保获得文件类型之前的最后一个点?或者有更好的方法来获取文件类型吗?
最佳答案
indexOf
总是从左到右并获取第一个匹配项。幸运的是,还有一种相反的方法,即从右到左。该方法称为 .lastIndexOf()
。
var fileType = file.name.substr(file.name.lastIndexOf(".") + 1);
关于javascript 获取文件类型仅适用于文件名称中包含 1 个点的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27533606/