js获取文件后缀名

function extname(filename){
  if(!filename||typeof filename!='string'){
     return false
  };
  let a = filename.split('').reverse().join('');
  let b = a.substring(0,a.search(/./)).split('').reverse().join('');
  return b
};
extname("emoji.png");//png

或者

const extname = (filename) => {
    if(!filename||typeof filename!='string'){
      return false
    };
    let a = filename.split('').reverse().join('');
    let b = a.substring(0,a.search(/./)).split('').reverse().join('');
    return b
}
extname("emoji.png");//png

或者

String.prototype.fileType = function () {
  var str = '',a = '',b = '';
  if(!this.length){
    return false
  };
  for (let i = 0; i < this.length; i++) {
    str += this[i];
  };
  a = str.split('').reverse().join('');
  b = a.substring(0,a.search(/./)).split('').reverse().join('');
  if(b.length){
    return b
  }else{
    throw 'This file has no suffix name'
  };
}        
let file = 'nihaoya.html';
file.fileType();

思路:先把文件名字符串通过split('')、reverse()、join('')转为倒置过来,再通过查找倒置过来后第一个'.'的位置i,通过substring(0,i)截取倒置的文件名,再把截取的文件名通过split('')、reverse()、join('')转为倒置就获得文件名。

原文地址:https://www.cnblogs.com/aidixie/p/11212256.html