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 相关文章推荐
我见过最全的个人js加解密功能页面
Dec 12 Javascript
jquery 实现两级导航菜单附效果图
Mar 07 Javascript
jquery mobile页面跳转后样式丢失js失效的解决方法
Sep 06 Javascript
BootStrap的Datepicker控件使用心得分享
May 25 Javascript
浅谈JS运算符&amp;&amp;和|| 及其优先级
Aug 10 Javascript
Bootstrap3 多个模态对话框无法显示的解决方案
Feb 23 Javascript
vue轮播图插件vue-awesome-swiper的使用代码实例
Jul 10 Javascript
JS返回顶部实例代码
Aug 09 Javascript
JS排序算法之冒泡排序,选择排序与插入排序实例分析
Dec 13 Javascript
详解vantUI框架在vue项目中的应用踩坑
Dec 06 Javascript
elementUI select组件使用及注意事项详解
May 29 Javascript
vue实现点击按钮切换背景颜色的示例代码
Jun 23 Javascript
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
我的群发邮件程序
2006/10/09 PHP
PHP下对字符串的递增运算代码
2010/08/21 PHP
php重定向的三种方法分享
2012/02/22 PHP
php防止伪造的数据从URL提交方法
2014/06/27 PHP
PHP中使用localhost连接Mysql不成功的解决方法
2014/08/20 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
php调用云片网接口发送短信的实现方法
2017/10/25 PHP
PHP排序算法之归并排序(Merging Sort)实例详解
2018/04/21 PHP
关于laravel后台模板laravel-admin select框的使用详解
2019/10/03 PHP
控制打印时页眉角的代码
2007/02/08 Javascript
jQuery load方法用法集锦
2011/12/06 Javascript
JavaScript中“过于”犀利地for/in循环使用示例
2013/10/22 Javascript
jQuery 获取、设置HTML或TEXT内容的两种方法
2014/05/23 Javascript
详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)
2015/10/01 Javascript
一分钟理解js闭包
2016/05/04 Javascript
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
2016/12/23 Javascript
JavaScript判断浏览器及其版本信息
2017/01/20 Javascript
将 vue 生成的 js 上传到七牛的实例
2017/07/28 Javascript
AngularJS 前台分页实现的示例代码
2018/06/07 Javascript
原生JS实现的简单小钟表功能示例
2018/08/30 Javascript
vue2.0 使用element-ui里的upload组件实现图片预览效果方法
2018/09/04 Javascript
Vue实现远程获取路由与页面刷新导致404错误的解决
2019/01/31 Javascript
JS表格的动态操作完整示例
2020/01/13 Javascript
javascript开发实现贪吃蛇游戏
2020/07/31 Javascript
Python实现的递归神经网络简单示例
2017/08/11 Python
python实现在IDLE中输入多行的方法
2018/04/19 Python
K最近邻算法(KNN)---sklearn+python实现方式
2020/02/24 Python
体育教育个人自荐信范文
2013/12/01 职场文书
校园之星获奖感言
2014/01/29 职场文书
企业人事任命书
2014/06/05 职场文书
解放思想大讨论活动心得体会
2014/09/11 职场文书
2014校长四风问题对照检查材料思想汇报
2014/09/16 职场文书
《法国号》教学反思
2016/02/22 职场文书
如何用python识别滑块验证码中的缺口
2021/04/01 Python
Python中OpenCV实现查找轮廓的实例
2021/06/08 Python
教你用python实现12306余票查询
2021/06/30 Python