浅谈javascript如何获取文件后缀名

 更新时间:2020年08月07日 10:25:00   作者:MoreWindows  
这篇文章主要介绍了浅谈javascript如何获取文件后缀名,文章通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

在上传文件时,常常要对文件的类型即对文件的后缀名进行判断,用javascript可以很容易的做到这一点。用Javascript解析一个带绝对路径的文件名并得到后缀名的方法有很多种,这里列出一种,以供参考。

对于一个带绝对路径的文件名如:D:\Program Files\Notepad++\Notepad++.exe

首先为了避免转义反斜杠出问题,可以用正则表达式来将\或\\替换成#,如:

D:#Program Files#Notepad++#Notepad++.exe

之后以‘#'为分隔符,将字符串分解成数组,得到如下数组:

D:  ProgramFiles  Notepad++  Notepad++.exe

取数组的最后一个即为带后缀的文件名:Notepad++.exe

再以‘.'为分隔符,将这个带后缀的文件名分解成数组,得到如下数组:

Notepad++  exe

然后再取数组的最后一个就可以得到文件的后缀名exe了

代码如下(Win7+IE9测试通过):

//by MoreWindows (http://blog.csdn.net/MoreWindows)
function GetExtensionFileName(pathfilename)
{
	var reg = /(\\+)/g;
	var pfn = pathfilename.replace(reg, "#");
	var arrpfn = pfn.split("#");
	var fn = arrpfn[arrpfn.length - 1];
	var arrfn = fn.split(".");
	return arrfn[arrfn.length - 1];
}

测试代码:

function Test()
{
	var filePath="D:\\Program Files\\Notepad++\\Notepad++.exe";
	alert(GetExtensionFileName(filePath));
}
<input type="button" value="Test" οnclick="Test()" />

点击Test按钮就可以弹出内容为exe的对话框,表示GetExtensionFileName能正确解析带绝对路径的文件名并得到后缀名。

估计这种方法只能在Windows平台下使用吧,在Linux执行下不知道会如何?

 到此这篇关于浅谈javascript如何获取文件后缀名的文章就介绍到这了,更多相关javascript获取文件后缀名内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • js实现掷骰子小游戏

    js实现掷骰子小游戏

    这篇文章主要为大家详细介绍了js实现掷骰子小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • 详解JavaScript节流函数中的Throttle

    详解JavaScript节流函数中的Throttle

    函数节流,就是对会频繁触发的函数事件做一些限制,让这些函数可以在每隔一定的时间或者每次满足一定的条件下再触发。一般我们会给他起一个名字throttle。也就是节流的意思。一般这样的函数有 resize事件、ontouchmove事件等。
    2016-07-07
  • JavaScript判断空值、NULL、undefined的方法对比

    JavaScript判断空值、NULL、undefined的方法对比

    JavaScript五种原始类型(boolean、number、string、null、undefined)中的一种。在鉴别JavaScript原始类型的时候我们会用到typeof操作符。Typeof操作符可用于字符串、数字、布尔和未定义类型。
    2022-12-12
  • JavaScript的面向对象(一)

    JavaScript的面向对象(一)

    JavaScript的面向对象(一)...
    2006-11-11
  • js判断IE浏览器版本过低示例代码

    js判断IE浏览器版本过低示例代码

    弄了个很简单的例子判断IE浏览器版本是否过低,注意在IE6和IE7版本较低情况下下才看到它的提示效果,需要的朋友可以收藏下
    2013-11-11
  • echarts饼图自定义设置颜色的3种实现方式

    echarts饼图自定义设置颜色的3种实现方式

    ECharts饼图的颜色可以通过多种方式进行设置,下面这篇文章主要给大家介绍了关于echarts饼图自定义设置颜色的3种实现方式,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-02-02
  • 微信小程序input、textarea层级过高穿透的问题解决

    微信小程序input、textarea层级过高穿透的问题解决

    微信小程序原生组件camera、canvas、input、live-player、live、pusher、map、textarea、video的层级是最高的,那么如何解决微信小程序input、textarea层级过高穿透,本文就详细的介绍一下
    2021-11-11
  • 比较详细的关于javascript中void(0)的具体含义解释

    比较详细的关于javascript中void(0)的具体含义解释

    比较详细的关于javascript中void(0)的具体含义解释...
    2007-08-08
  • js给selected添加options的方法

    js给selected添加options的方法

    这篇文章主要介绍了js给selected添加options的方法,涉及javascript动态添加页面下拉列表selected的技巧,需要的朋友可以参考下
    2015-05-05
  • 实用Javascript调试技巧分享(小结)

    实用Javascript调试技巧分享(小结)

    这篇文章主要介绍了实用Javascript调试技巧分享(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-06-06

最新评论