JS 獲取檔案字尾,判斷檔案型別(比如是否為圖片格式)
阿新 • • 發佈:2020-05-11
1、獲取檔案字尾
有時候我們需要通過檔名或者路徑,得到該檔案的字尾名(副檔名),可以通過如下方式進行擷取:
//檔案路徑 var filePath = "file://upload/jb51.png"; //獲取最後一個.的位置 var index= filePath.lastIndexOf("."); //獲取字尾 var ext = filePath.substr(index+1); //輸出結果 console.log(ext);
效果圖如下:
2、檔案型別判斷
我們得到檔案字尾名後,根據字尾即可判斷檔案的型別(檔案格式)。比如我們需要判斷一個檔案是否是圖片格式,首先定義一個判斷函式:
function isAssetTypeAnImage(ext) { return [ 'png','jpg','jpeg','bmp','gif','webp','psd','svg','tiff']. indexOf(ext.toLowerCase()) !== -1; }
使用時只需把字尾傳入即可判斷:
//檔案路徑 var filePath = "file://upload/jb51.png"; //獲取最後一個.的位置 var index= filePath.lastIndexOf("."); //獲取字尾 var ext = filePath.substr(index+1); //判斷是否是圖片 console.log("該檔案是否為圖片:" + isAssetTypeAnImage(ext));
效果圖如下:
3、第三種實現方式,今天我們小編剛get到的新技能
<script> //檔案路徑 var fileName = "file://upload/jb51.png"; var Ttype=""; //字尾獲取 let suffix = ''; // 獲取型別結果 let result = ''; const flieArr = fileName.split('.'); suffix = flieArr[flieArr.length - 1]; if(suffix!=""){ suffix = suffix.toLocaleLowerCase(); // 圖片格式 const imglist = ['png','gif']; // 進行圖片匹配 result = imglist.find(item => item === suffix); if (result) { Ttype='image'; } } console.log("該檔案是否為圖片:" + Ttype); </script>
使用es6的箭頭函式