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 相关文章推荐
JQuery中对服务器控件 DropdownList, RadioButtonList, CheckboxList的操作总结
Jun 28 Javascript
JS.elementGetStyle(element, style)应用示例
Sep 24 Javascript
js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS
Nov 18 Javascript
浅析JavaScript基本类型与引用类型
May 28 Javascript
基于JS实现的倒计时程序实例
Jul 24 Javascript
js 客户端打印html 并且去掉页眉、页脚的实例
Nov 03 Javascript
微信小程序表单验证功能完整实例
Dec 01 Javascript
动手写一个angular版本的Message组件的方法
Dec 16 Javascript
用ES6写全屏滚动插件的示例代码
May 02 Javascript
react在安卓中输入框被手机键盘遮挡问题的解决方法
Sep 03 Javascript
微信小程序实现同一页面取值的方法分析
Apr 30 Javascript
Element-UI 使用el-row 分栏布局的教程
Oct 26 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
VFP与其他应用程序的集成
2006/10/09 PHP
PHP实现绘制3D扇形统计图及图片缩放实例
2014/10/01 PHP
19个Android常用工具类汇总
2014/12/30 PHP
php实现图片缩略图的方法
2016/03/29 PHP
php中使用GD库做验证码
2016/03/31 PHP
Thinkphp5.0自动生成模块及目录的方法详解
2017/04/17 PHP
解决iframe的frameborder在chrome/ff/ie下的差异
2010/08/12 Javascript
JavaScript对象之间的转换 jQuery对象和原声DOM
2011/03/07 Javascript
jQuery图片播放8款精美插件分享
2013/02/17 Javascript
js实现文本框选中的方法
2015/05/26 Javascript
jquery显示loading图片直到网页加载完成的方法
2015/06/25 Javascript
JavaScript使用DeviceOne开发实战(三)仿微信应用
2015/12/02 Javascript
详解AngularJS如何实现跨域请求
2016/08/22 Javascript
JavaScript中 this 指向问题深度解析
2017/02/21 Javascript
angular使用bootstrap方法手动启动的实例代码
2017/07/18 Javascript
使用Bootrap和Vue实现仿百度搜索功能
2017/10/26 Javascript
Vue组件通信之Bus的具体使用
2017/12/28 Javascript
Vuex的基本概念、项目搭建以及入坑点
2018/11/04 Javascript
实用的Vue开发技巧
2019/05/30 Javascript
如何使用JavaScript实现栈与队列
2019/06/24 Javascript
[45:25]完美世界DOTA2联赛循环赛 PXG vs IO 第一场 11.06
2020/11/09 DOTA
栈和队列数据结构的基本概念及其相关的Python实现
2015/08/24 Python
python实现SMTP邮件发送功能
2020/06/16 Python
Python正则表达式经典入门教程
2017/05/22 Python
Python模拟自动存取款机的查询、存取款、修改密码等操作
2018/09/02 Python
python通过ffmgep从视频中抽帧的方法
2018/12/05 Python
python登录WeChat 实现自动回复实例详解
2019/05/28 Python
django框架实现一次性上传多个文件功能示例【批量上传】
2019/06/19 Python
升级keras解决load_weights()中的未定义skip_mismatch关键字问题
2020/06/12 Python
通过实例了解python__slots__使用方法
2020/09/14 Python
亚马逊加拿大网站:Amazon.ca
2020/01/06 全球购物
网站设计师的岗位职责
2013/11/21 职场文书
结构工程个人自荐信范文
2013/11/30 职场文书
环保倡议书怎么写
2014/05/16 职场文书
小学领导班子对照材料
2014/08/23 职场文书
环卫工作个人总结
2015/03/04 职场文书