//JavaScript根据文件名判断文件类型

var imgExt = new Array(".png",".jpg",".jpeg",".bmp",".gif");//图片文件的后缀名
var docExt = new Array(".doc",".docx");//word文件的后缀名
var xlsExt = new Array(".xls",".xlsx");//excel文件的后缀名
var cssExt = new Array(".css");//css文件的后缀名
var jsExt = new Array(".js");//js文件的后缀名 //获取文件名后缀名
String.prototype.extension = function(){
var ext = null;
var name = this.toLowerCase();
var i = name.lastIndexOf(".");
if(i > -1){
var ext = name.substring(i);
}
return ext;
} //判断Array中是否包含某个值
Array.prototype.contain = function(obj){
for(var i=0; i<this.length; i++){
if(this[i] === obj)
return true;
}
return false;
}; function typeMatch(type, fielname){
var ext = filename.extension();
if(type.contain(ext)){
return true;
}
return false;
}

引用上述代码后,如果要判断文件filename是否是图片文件,只需如下:

if(typeMatch(imgExt, filename)){
alert("是图片文件");
}
else{
alert("不是图片文件");
}

如果需要判断其它文件类型,可以在最前面添加后缀面的数组,类似于imgExt,然后使用上面的方法来判断。

另外一种写法:

//JavaScript根据文件名判断文件类型

var imgExt = new Array(".png",".jpg",".jpeg",".bmp",".gif");//图片文件的后缀名
var docExt = new Array(".doc",".docx");//word文件的后缀名
var xlsExt = new Array(".xls",".xlsx");//excel文件的后缀名
var cssExt = new Array(".css");//css文件的后缀名
var jsExt = new Array(".js");//js文件的后缀名 //获取文件名后缀名
String.prototype.extension = function(){
var ext = null;
var name = this.toLowerCase();
var i = name.lastIndexOf(".");
if(i > -1){
var ext = name.substring(i);
}
return ext;
} //判断Array中是否包含某个值
Array.prototype.contain = function(obj){
for(var i=0; i<this.length; i++){
if(this[i] === obj)
return true;
}
return false;
}; String.prototype.extMatch = function(extType){
if(extType.contain(this.extension()))
return true;
else
return false;
} //判断是否图片文件
var filename = "dfsd.png";//文件名
if(filename.extMatch(imgExt))
alert("图片文件");
else
alert("非图片文件");

JavaScript根据文件名判断文件类型的更多相关文章

  1. JavaScript获取及判断文件类型

    一.获取文件后缀 <input type="file" name="addvedio" accept="video/*"/>注: ...

  2. struts文件上传,获取文件名和文件类型

    struts文件上传,获取文件名和文件类型   Action中还有两个属 性:uploadFileName和uploadContentType,这两个属性分别用于封装上传文件的文件名.文件类型.这是S ...

  3. 利用PHP取二进制文件头判断文件类型

    <?php $files = array('D:\no.jpg', 'D:\no.png','D:\no2.JPEG','D:\no.BMP'); $fileTypes = array( 779 ...

  4. Linux中用st_mode判断文件类型

    Linux中用st_mode判断文件类型 2012-12-11 12:41 14214人阅读 评论(4) 收藏 举报  分类: Linux(8)  C/C++(20)  版权声明:本文为博主原创文章, ...

  5. php 读取文件头判断文件类型的实现代码

    php代码实现读取文件头判断文件类型,支持图片.rar.exe等后缀. 例子: <?php $filename = "11.jpg"; //为图片的路径可以用d:/uploa ...

  6. PHP取二进制文件头快速判断文件类型的实现代码

    通过读取文件头信息来识别文件的真实类型. 一般我们都是按照文件扩展名来判断文件类型,但是这个很不靠谱,轻易就通过修改扩展名来躲避了,一般必须要读取文件信息来识别,PHP扩展中提供了类似 exif_im ...

  7. PHP取二进制文件头快速判断文件类型

    <?php /*文件扩展名说明 *7173 gif *255216 jpg *13780 png *6677 bmp *239187 txt,aspx,asp,sql *208207 xls.d ...

  8. PHP读取文件头(2字节)判断文件类型(转)

    看到此标题或许你会说是否是多此一举,直接判断扩展名不就知道文件类型了吗,但是扩展名很容易伪造,这样就绕过了判断.大部分的文件都会将一个特殊的数字或字符存放在文件的特定位置里(开始处的2个字节) /** ...

  9. 用java流方式判断文件类型

    这个方法只能在有限的范围内有效.并不是万金油 比如 图片类型判断,音频文件格式判断,视频文件格式判断等这种肯定是2进制且专业性很强的文件类型判断. 下面给出完整版代码 首先是文件类型枚取 packag ...

随机推荐

  1. CClayer ignoreAnchorPointForPosition 参数的作用

    ignoreAnchorPointForPosition:忽略锚点对于位置的设定.即非位置的设定(比如说缩放),则不受此参数的控制. 并且默认情况下CCLayer的默认锚点是 中点,而不是左下角的点. ...

  2. 使用toggle()方法进行显示隐藏

    这是一个示例: <html> <head> <script type="text/javascript" src="http://keley ...

  3. browserCaps与浏览器功能设置

    使用 Web.config 文件中的 browserCaps 元素来定义浏览器的行为在 .NET Framework 2.0 中被否决,但仍受支持.此元素中的数据与浏览器定义文件 (.browser) ...

  4. wampsever在线模式和离线模式有什么区别

    我们在开发网站的时候经常会使用到wampsever服务器,在测试项目的时候我们会经常发现,wampsever服务器在线模式和离线模式都可以使用并且测试,还有一个现象就是我们在测试无线网络,用手机访问的 ...

  5. Codeforces Round #376A (div2)

    Night at the Museum 题意: 有一个转盘,26个英文字母均匀分布在转盘边缘,转针初始位置在字母a,每次只能转动到相邻的字母,然后输入一个由26个字母组成的字符串(最长100),不复位 ...

  6. Windows下安装Nginx+php+mysql环境

    系统:Windows 7 64位系统 安装之前,首先下载软件: Nginx: http://nginx.org/en/download.html PHP Stable PHP 5.6.26: http ...

  7. 转载 【CSS进阶】伪元素的妙用--单标签之美

    1.单个颜色实现按钮 hover .active 的明暗变化 请点击 转载利用伪元素单个颜色实现 hover 和 active 时的明暗变化效果 2.利用after伪类清除浮动 .clearfix:a ...

  8. 一款简洁大气的jquery日期日历插件

    本jquery插件名为manhuaDate,暂时只支持jquery 1.9.0以下版本,比如jquery-1.8.3.min.js 查看效果网址:http://keleyi.com/a/bjad/em ...

  9. 二次、三次贝塞尔曲线demo(演示+获取坐标点)

    二次贝塞尔曲线demo: See the Pen quadraticCurveDemo by hanyanjun (@hanyanjun) on CodePen. 我的demo地址(二次) 推荐点击以 ...

  10. Android—初识AsyncTask

    AsyncTask是用来处理一些后台的比较耗时的任务,给用户带来良好的体验.AsyncTask扩展Thread,增强了与主线程的交互能力. 首先介绍AsyncTask中定义的以下几个方法: onPre ...