js根据后缀判断文件文件类型的代码


Posted in Javascript onMay 09, 2020

核心代码

<script>
function getFileType(fileName) {
  // 后缀获取
  let suffix = '';
  // 获取类型结果
  let result = '';
  try {
   const flieArr = fileName.split('.');
   suffix = flieArr[flieArr.length - 1];
  } catch (err) {
   suffix = '';
  }
  // fileName无后缀返回 false
  if (!suffix) { return false; }
  suffix = suffix.toLocaleLowerCase();
  // 图片格式
  const imglist = ['png', 'jpg', 'jpeg', 'bmp', 'gif'];
  // 进行图片匹配
  result = imglist.find(item => item === suffix);
  if (result) {
   return 'image';
  }
  // 匹配txt
  const txtlist = ['txt'];
  result = txtlist.find(item => item === suffix);
  if (result) {
   return 'txt';
  }
  // 匹配 excel
  const excelist = ['xls', 'xlsx'];
  result = excelist.find(item => item === suffix);
  if (result) {
   return 'excel';
  }
  // 匹配 word
  const wordlist = ['doc', 'docx'];
  result = wordlist.find(item => item === suffix);
  if (result) {
   return 'word';
  }
  // 匹配 pdf
  const pdflist = ['pdf'];
  result = pdflist.find(item => item === suffix);
  if (result) {
   return 'pdf';
  }
  // 匹配 ppt
  const pptlist = ['ppt', 'pptx'];
  result = pptlist.find(item => item === suffix);
  if (result) {
   return 'ppt';
  }
  // 匹配 视频
  const videolist = ['mp4', 'm2v', 'mkv', 'rmvb', 'wmv', 'avi', 'flv', 'mov', 'm4v'];
  result = videolist.find(item => item === suffix);
  if (result) {
   return 'video';
  }
  // 匹配 音频
  const radiolist = ['mp3', 'wav', 'wmv'];
  result = radiolist.find(item => item === suffix);
  if (result) {
   return 'radio';
  }
  // 其他 文件类型
  return 'other';
 }
console.log(getFileType("3water.jpg"));
</script>

在chrome中F12测试发现

js根据后缀判断文件文件类型的代码

符合我们的要求。

上面的代码主要用到了js(=>) 箭头函数

ES6标准新增了一种新的函数:Arrow Function(箭头函数)。

为什么叫Arrow Function?因为它的定义用的就是一个箭头:

x => x * x

上面的箭头函数相当于:

function (x) {
return x * x;
}

箭头函数相当于匿名函数,并且简化了函数定义。箭头函数有两种格式,一种像上面的,只包含一个表达式,连{ ... }和return都省略掉了。还有一种可以包含多条语句,这时候就不能省略{ ... }和return:

=>是es6语法中的arrow function

(x) => x + 6

相当于

function(x){
return x + 6;
};

以上就是js根据后缀判断文件文件类型的代码的详细内容,更多关于js后缀的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
Prototype源码浅析 Enumerable部分之each方法
Jan 16 Javascript
js获取height和width的方法说明
Jan 06 Javascript
js判断页面中是否有指定控件的简单实例
Mar 04 Javascript
jQuery中fadeOut()方法用法实例
Dec 24 Javascript
Javascript Function.prototype.bind详细分析
Dec 29 Javascript
Angular2 组件交互实例详解
Aug 24 Javascript
JS实现提交表单前的数字及邮箱校检功能
Nov 13 Javascript
页面点击小红心js实现代码
May 26 Javascript
jQuery实现模糊搜索功能的方法分析
Jun 29 jQuery
JavaScript Canvas实现验证码
Aug 02 Javascript
少女风vue组件库的制作全过程
May 15 Javascript
vue实现购物车的小练习
Dec 21 Vue.js
Element实现表格嵌套、多个表格共用一个表头的方法
May 09 #Javascript
JS原形与原型链深入详解
May 09 #Javascript
JavaScript中的this妙用实例分析
May 09 #Javascript
JavaScript中继承原理与用法实例入门
May 09 #Javascript
jQuery三组基本动画与自定义动画操作实例总结
May 09 #jQuery
JavaScript进阶(四)原型与原型链用法实例分析
May 09 #Javascript
JavaScript进阶(三)闭包原理与用法详解
May 09 #Javascript
You might like
thinkphp实现数组分页示例
2014/04/13 PHP
用PHP代替JS玩转DOM的思路及示例代码
2014/06/15 PHP
php+memcache实现的网站在线人数统计代码
2014/07/04 PHP
9个比较实用的php代码片段
2016/03/15 PHP
php数组冒泡排序算法实例
2016/05/06 PHP
javascript 支持ie和firefox杰奇翻页函数
2008/07/22 Javascript
利用javascript实现一些常用软件的下载导航
2009/08/03 Javascript
基于jquery的3d效果实现代码
2011/03/23 Javascript
js实现用户注册协议倒计时的方法
2015/01/21 Javascript
第十章之巨幕页头缩略图与警告框组件
2016/04/25 Javascript
jQuery实现的导航下拉菜单效果
2016/07/04 Javascript
JavaScript蒙板(model)功能的简单实现代码
2016/08/04 Javascript
Angular 4依赖注入学习教程之Injectable装饰器(六)
2017/06/04 Javascript
微信小程序在ios下Echarts图表不能滑动的问题解决
2019/07/10 Javascript
weui上传多图片,压缩,base64编码的示例代码
2020/06/22 Javascript
python获取指定网页上所有超链接的方法
2015/04/04 Python
python3操作mysql数据库的方法
2017/06/23 Python
python实现下载pop3邮件保存到本地
2018/06/19 Python
python爬虫之urllib,伪装,超时设置,异常处理的方法
2018/12/19 Python
Python Flask框架模板操作实例分析
2019/05/03 Python
nginx黑名单和django限速,最简单的防恶意请求方法分享
2019/08/09 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
django框架ModelForm组件用法详解
2019/12/11 Python
Django+python服务器部署与环境部署教程详解
2020/03/30 Python
记录模型训练时loss值的变化情况
2020/06/16 Python
Python爬取某平台短视频的方法
2021/02/08 Python
英国时尚运动品牌的合集:The Sports Edit
2017/12/20 全球购物
世界上第一个水枕头:Mediflow
2018/12/06 全球购物
巴西购物网站:Onofre Agora
2020/06/08 全球购物
信息技术课后反思
2014/04/27 职场文书
小学亲子活动总结
2014/07/01 职场文书
综治维稳工作承诺书
2014/08/30 职场文书
《领导干部从政道德启示录》学习心得体会
2016/01/20 职场文书
nginx 防盗链防爬虫配置详解
2021/03/31 Servers
Redis持久化与主从复制的实践
2021/04/27 Redis
Python自动化爬取天眼查数据的实现
2021/06/15 Python