JavaScript根据文件名判断文件类型
//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根据文件名判断文件类型的更多相关文章
- JavaScript获取及判断文件类型
一.获取文件后缀 <input type="file" name="addvedio" accept="video/*"/>注: ...
- struts文件上传,获取文件名和文件类型
struts文件上传,获取文件名和文件类型 Action中还有两个属 性:uploadFileName和uploadContentType,这两个属性分别用于封装上传文件的文件名.文件类型.这是S ...
- 利用PHP取二进制文件头判断文件类型
<?php $files = array('D:\no.jpg', 'D:\no.png','D:\no2.JPEG','D:\no.BMP'); $fileTypes = array( 779 ...
- Linux中用st_mode判断文件类型
Linux中用st_mode判断文件类型 2012-12-11 12:41 14214人阅读 评论(4) 收藏 举报 分类: Linux(8) C/C++(20) 版权声明:本文为博主原创文章, ...
- php 读取文件头判断文件类型的实现代码
php代码实现读取文件头判断文件类型,支持图片.rar.exe等后缀. 例子: <?php $filename = "11.jpg"; //为图片的路径可以用d:/uploa ...
- PHP取二进制文件头快速判断文件类型的实现代码
通过读取文件头信息来识别文件的真实类型. 一般我们都是按照文件扩展名来判断文件类型,但是这个很不靠谱,轻易就通过修改扩展名来躲避了,一般必须要读取文件信息来识别,PHP扩展中提供了类似 exif_im ...
- PHP取二进制文件头快速判断文件类型
<?php /*文件扩展名说明 *7173 gif *255216 jpg *13780 png *6677 bmp *239187 txt,aspx,asp,sql *208207 xls.d ...
- PHP读取文件头(2字节)判断文件类型(转)
看到此标题或许你会说是否是多此一举,直接判断扩展名不就知道文件类型了吗,但是扩展名很容易伪造,这样就绕过了判断.大部分的文件都会将一个特殊的数字或字符存放在文件的特定位置里(开始处的2个字节) /** ...
- 用java流方式判断文件类型
这个方法只能在有限的范围内有效.并不是万金油 比如 图片类型判断,音频文件格式判断,视频文件格式判断等这种肯定是2进制且专业性很强的文件类型判断. 下面给出完整版代码 首先是文件类型枚取 packag ...
随机推荐
- 我对Backbone.js的一些认识
backbone.js已经不是当前最流行的前端框架了,但是对于我而言,依然具有比较好的学习价值.虽然目前来说,react,vue等mvvm框架非常火热,但是感觉自身还不到去使用这种框架的层次.这些技术 ...
- .NET多线程总结和实例介绍
摘要:.Net提供了许多多线程编程工具,可能是因为太多了,所以掌握起来总是有一些头疼,我在这里讲讲我总结的一些多线程编程的经验,希望对大家有帮助. 1.多线程的总结 不需要传递参数,也不需要返回参数 ...
- bzoj1202--带权并查集+前缀和
http://www.lydsy.com/JudgeOnline/problem.php?id=1202 记s[i]=a[1]+a[2]+...+a[i],即s[i]为前缀和.再令v[i]=s[f[i ...
- 【Java每日一题】20161212
package Dec2016; public class Ques1212 { public static void main(String[] args){ System.out.println( ...
- luogg_java学习_06_面向对象特性之封装和继承
这篇博客总结了1天,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 , 因为前不久偶然发现某网站直接复制粘贴我的博客,交谈之后他们修改 ...
- 功能强大的滚动播放插件JQ-Slide
查看效果:http://keleyi.com/keleyi/phtml/jqplug/4.htmJQ-Slide插件功能强大,滚动方式自由多样全部滚动方式 方式一 方式二 方式三 方式四 方式五 方式 ...
- 如何在mac上安装docker[记录自己在mac上安装docker的经历]
0.引子 最近入手了一台mac笔记本,想在本地安装docker. 1.找安装文档. 文档地址:http://www.widuu.com/chinese_docker/installation/mac. ...
- Ajax表单异步上传(包括文件域)
起因 做前台页面时,需要调用WebAPI的Post请求,发送一些字段和文件(相当于把表单通过ajax异步发送出去,得到返回结果),然后得到返回值判断是否成功. 尝试 先是尝试了一下 "jQu ...
- iOS RunLoop简介
一.什么是RunLoop? RunLoop是运行循环,每个Cocoa应用程序都由一个处于阻塞状态的do/while循环驱动,当有事件发生时,就把事件分派给合适的监听器,如此反复直到循环停止.处理分派的 ...
- 理解java虚拟机内存分配堆,栈和方法区
栈:存放局部变量 堆:存放new出来的对象 方法区:存放类的信息,static变量,常量池(字符串常量) 在堆中,可以说是堆的一部分 创建了一个student类,定义了name属性, id静态变量 ...