JS獲取擴(kuò)展名的方法有多少種,代碼是什么
Admin 2022-11-15 群英技術(shù)資訊 1400 次瀏覽
關(guān)于“JS獲取擴(kuò)展名的方法有多少種,代碼是什么”的知識(shí)有一些人不是很理解,對(duì)此小編給大家總結(jié)了相關(guān)內(nèi)容,具有一定的參考借鑒價(jià)值,而且易于學(xué)習(xí)與理解,希望能對(duì)大家有所幫助,有這個(gè)方面學(xué)習(xí)需要的朋友就繼續(xù)往下看吧。
function getFileExtension1(filename) {
return /[.]/.exec(filename) ? /[^.]+$/.exec(filename)[0] : undefined
}
這里的/[.]/.exec(filename)是用來判斷.是否存在,如果不存在的話,其值為null,/[^.]+$/.exec(filename)[0]拿到從.開始匹配的字符串,也就是擴(kuò)展名。如果不存在則返回undefined。
function getFileExtension(filename) {
return filename.split(".").pop()
}
function getFileExtension(filename) {
return filename.slice((filename.lastIndexOf(".") - 1 >>> 0) + 2)
}
解釋:首先filename.slice()方法是用來切割字符串的,所以我們只需要獲取的.的下一位坐標(biāo)即可,此時(shí)我們可以使用filename.lastIndexOf()來獲取最后一位.所在的下標(biāo)。
我們需要考慮多種情況,
一種:如果filename.lastIndexOf()大于0,此時(shí)我們直接獲取下一位的坐標(biāo)即可,以下一位為起始進(jìn)行切割。
二種:如果filename.lastIndexOf為-1,則表示不存在.,此時(shí)我們應(yīng)該將其設(shè)置為一個(gè)很大的數(shù),當(dāng)從一個(gè)大于字符串長度進(jìn)行切割時(shí),返回的字符串為空字符串。
三種:如果filename.lastIndexOf為0時(shí),則也表示不存在擴(kuò)展名,此時(shí)我們應(yīng)該將其設(shè)置為很大的數(shù)。
filename.lastIndex(".") - 1中這里的減一,就是將0變?yōu)?1, -1變成-2。
>>> 0的解釋:
console.log(12 >>> 0) //12 console.log(1.2 >>> 0) //1 console.log(1.8 >>> 0) //1 console.log(-1 >>> 0) //4294967295 console.log(-2 >>> 0) //4294967294 console.log(0 >>> 0) //0 如上述代碼和其結(jié)果所示。 如果值為正整數(shù)時(shí),此時(shí)結(jié)果還為原來的值 如果值為小數(shù)時(shí),此時(shí)結(jié)果為小數(shù)向下取整所得的值。 如果值為負(fù)數(shù)時(shí),此時(shí)結(jié)果為當(dāng)前值 + 二的32次方所得的值。 如果值為0時(shí),此時(shí)結(jié)果為0。
下面貼上代碼:
//獲取文件后綴的js代碼
<script type="text/javascript">
var strp;
function getEx(){
var filepath=document.getElementById('fileEx').value;
var opt=parseInt(document.getElementById('opt').value);
switch(opt){
case 1:
strp=filepath.substring(filepath.lastIndexOf(".")+1);
break;
case 2:
strp=filepath.split(".").pop();
break;
}
alert(strp);
}
</script>
//html頁面
<input type="file" id="fileEx" name="fileEx">
<select id="opt">
<option value="1">1</option>
<option value="2">2</option>
</select>
<button onClick="getEx()">獲取</button>
簡要來說就是獲取文件路徑,然后使用不同的方法獲取后綴名
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:[email protected]進(jìn)行舉報(bào),并提供相關(guān)證據(jù),查實(shí)之后,將立刻刪除涉嫌侵權(quán)內(nèi)容。
猜你喜歡
這篇文章主要為大家介紹了vue?element樹形控件實(shí)現(xiàn)樹形表格,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
js中的this關(guān)鍵字平時(shí)在開發(fā)中使用時(shí)倒是也能正常應(yīng)用,但是對(duì)其使用和判斷并不能信手拈來,所以下面這篇文章主要給大家介紹了關(guān)于js中this關(guān)鍵字的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
nodejs中的異步迭代器是什么?一些朋友對(duì)于異步迭代器比較好奇,因此這篇文章就和大家來分享一下異步迭代器以及其作用,下文有詳細(xì)的介紹及實(shí)例供大家參考,感興趣的朋友就繼續(xù)往下看吧。
改變方法:1、使用“document.getElementsByTagName("body")”語句獲取到body元素節(jié)點(diǎn);2、使用“body元素節(jié)點(diǎn).style.backgroundColor="顏色值";”語句來改變網(wǎng)頁的背景顏色。
瀑布流也叫做瀑布流式布局,是一種比較常見和流行的網(wǎng)站頁面布局,視覺效果就是每行高度不同,表現(xiàn)為參差不齊的多欄布局。那么瀑布流式布局要怎樣實(shí)現(xiàn)呢?下面給大家分享js實(shí)現(xiàn)瀑布流布局的3種方法。
推薦內(nèi)容
相關(guān)標(biāo)簽
成為群英會(huì)員,開啟智能安全云計(jì)算之旅
立即注冊(cè)關(guān)注或聯(lián)系群英網(wǎng)絡(luò)
7x24小時(shí)售前:400-678-4567
7x24小時(shí)售后:0668-2555666
24小時(shí)QQ客服
群英微信公眾號(hào)
CNNIC域名投訴舉報(bào)處理平臺(tái)
服務(wù)電話:010-58813000
服務(wù)郵箱:[email protected]
投訴與建議:0668-2555555
Copyright ? QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版權(quán)所有
增值電信經(jīng)營許可證 : B1.B2-20140078 ICP核準(zhǔn)(ICP備案)粵ICP備09006778號(hào) 域名注冊(cè)商資質(zhì) 粵 D3.1-20240008