JavaScript使用URL.canParse驗(yàn)證URL的方法詳解
JavaScript誕生以來,一直沒有一種簡(jiǎn)單的方法驗(yàn)證URL,現(xiàn)在JavaScript新增了一個(gè)新方法——URL.canParse。
URL.canParse('https://www.stefanjudis.com'); // true
URL.canParse('www.stefanjudis.com'); // false
URL.canParse() 是一種快速驗(yàn)證字符串是否為有效的URL的方法。然而我們也不要高興太早,URL.canParse()方法還存在瀏覽器兼容問題,在寫這篇文章時(shí)支持該方法的瀏覽器版本如下圖:

這是詳情的瀏覽器支持信息鏈接:https://caniuse.com/?search=canParse%E3%80%82
不過core-js已支持URL.canParse()方法,使用core-js作為墊片可以解決瀏覽器兼容性問題。

URL.canParse() 與 URL() 構(gòu)造函數(shù)是相同的算法來評(píng)估有效的 URL。
由于這兩種方法都實(shí)現(xiàn)了相同的解析器,并且URL() 目前得到了很好的支持,因此我們可以使用構(gòu)造函數(shù)來驗(yàn)證 URL。將新的URL() 放在輔助函數(shù)中,調(diào)用它并檢查它是否拋出異常!
function isUrlValid(string) {
try {
new URL(string);
return true;
} catch (err) {
return false;
}
}
isUrlValid('https://www.stefanjudis.com'); // true
isUrlValid('www.stefanjudis.com'); // false
如果不喜歡 isUrlValid 函數(shù),也可以像 core-js 一樣 polyfill URL.canParse() 。
以上就是JavaScript使用URL.canParse驗(yàn)證URL方法詳解的詳細(xì)內(nèi)容,更多關(guān)于JavaScript驗(yàn)證URL的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Three.js利用Detector.js插件如何實(shí)現(xiàn)兼容性檢測(cè)詳解
這篇文章主要給大家介紹了關(guān)于Three.js利用Detector.js插件如何實(shí)現(xiàn)兼容性檢測(cè)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-09-09
javascript 封裝的一個(gè)實(shí)用的焦點(diǎn)圖切換效果
之前有一篇博客,實(shí)用的焦點(diǎn)圖切換效果,結(jié)構(gòu)行為相分離 解釋的比較詳細(xì),腳本是分離式的,但在易用性和重用性方面并不理想,這里原作者進(jìn)行了,優(yōu)化。2010-07-07
javascript中for...of和for..in循環(huán)的區(qū)別
JS中循環(huán)語句眾多,你是否也有用的時(shí)候突然不知道用哪個(gè)的經(jīng)歷,本文主要介紹了javascript中for...of和for..in循環(huán)的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
JavaScript對(duì)象詳解之對(duì)象屬性的添加
這篇文章主要給大家介紹了關(guān)于JavaScript對(duì)象詳解之js對(duì)象屬性的添加的相關(guān)資料,在JavaScript中對(duì)象是通過鍵值對(duì)來存儲(chǔ)數(shù)據(jù)的一種數(shù)據(jù)類型,可以通過直接給對(duì)象添加屬性的方式來增加對(duì)象的屬性,需要的朋友可以參考下2023-07-07
JS解決移動(dòng)web開發(fā)手機(jī)輸入框彈出的問題
在移動(dòng)web開發(fā)中和pc端不同的是,手機(jī)的輸入是軟鍵盤,這樣就會(huì)有個(gè)問題,那就是當(dāng)有輸入的時(shí)候,鍵盤彈起來,整個(gè)頁(yè)面難免會(huì)發(fā)生變化。怎么解決這個(gè)問題呢?下面腳本之家小編給大家分享JS解決移動(dòng)web開發(fā)手機(jī)輸入框彈出的問題2017-03-03
查看圖片(前進(jìn)后退)功能實(shí)現(xiàn)js代碼
前進(jìn)后退實(shí)現(xiàn)的前提是:images文件夾下圖片的命名是從1~5.jpg有規(guī)律的,感興趣的朋友可以參考下哈,希望可以幫助到你2013-04-04
微信小程序開發(fā)之錄音機(jī) 音頻播放 動(dòng)畫實(shí)例 (真機(jī)可用)
這篇文章主要介紹了微信小程序開發(fā)之錄音機(jī) 音頻播放 動(dòng)畫實(shí)例 (真機(jī)可用),這里整理了詳細(xì)的代碼,有需要的小伙伴可以參考下。2016-12-12

