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('')轉為倒置就獲得文件名。