js 文件上传判断文件类型

本文介绍了如何使用JavaScript在文件上传时进行文件类型的判断,确保上传的文件符合指定的格式,从而增强网页应用的安全性和用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

function getFileType(fileName) {
  // 根据后缀判断文件类型
  let fileSuffix = "";
  // 结果
  let result = "";
  try {
    let flieArr = fileName.split(".");
    fileSuffix = flieArr[flieArr.length - 1];
  } catch (err) {
    fileSuffix = "";
  }
  // fileName无后缀返回 false
  if (!fileSuffix) {
    result = false;
    return result;
  }
  // 图片格式
  let imglist = ["png", "jpg", "jpeg", "bmp", "gif"];
  // 进行图片匹配
  result = imglist.some(function(item) {
    return item == fileSuffix;
  });
  if (result) {
    result = "image";
    return result;
  }
  // 匹配txt
  let txtlist = ["txt"];
  result = txtlist.some(function(item) {
    return item == fileSuffix;
  });
  if (result) {
    result = "txt";
    return result;
  }
  // 匹配 excel
  let excelist = ["xls", "xlsx"];
  result = excelist.some(function(item) {
    return item == fileSuffix;
  });
  if (result) {
    result = "excel";
    return result;
  }
  // 匹配 word
  let wordlist = ["doc", "docx"];
  result = wordlist.some(function(item) {
    return item == fileSuffix;
  });
  if (result) {
    result = "word";
    return result;
  }
  // 匹配 pdf
  let pdflist = ["pdf"];
  result = pdflist.some(function(item) {
    return item == fileSuffix;
  });
  if (result) {
    result = "pdf";
    return result;
  }
  // 匹配 ppt
  let pptlist = ["ppt"];
  result = pptlist.some(function(item) {
    return item == fileSuffix;
  });
  if (result) {
    result = "ppt";
    return result;
  }
  // 匹配 视频
  let videolist = ["mp4", "m2v", "mkv"];
  result = videolist.some(function(item) {
    return item == fileSuffix;
  });
  if (result) {
    result = "video";
    return result;
  }
  // 匹配 音频
  let radiolist = ["mp3", "wav", "wmv"];
  result = radiolist.some(function(item) {
    return item == fileSuffix;
  });
  if (result) {
    result = "radio";
    return result;
  }
  // 其他 文件类型
  result = "other";
  return result;
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值