JavaScript 领域的 URL 验证前沿有新闻!经过这么多年咒骂 JavaScript 没有一种简单的方法来验证 URL 后,镇上出现了一种新方法 - !URL
URL.canParse('https://www.stefanjudis.com'); // true
URL.canParse('www.stefanjudis.com'); // false
哈利路亚!URL.canParse() 是确定字符串是否为有效 URL 的快速方法。但在我们都太兴奋之前,在撰写这篇文章时,URL.canParse() 不支持跨浏览器。但您可以在下面找到最新的浏览器支持信息。👇
不过,静态方法已经包含在 core-js 中。填充漂亮的 URL 验证单行内容是否辛苦?原来,不!
URL
URL()
依赖于与构造函数相同的算法来评估有效的 URL 。
如果你很好奇,想要升级你的规范阅读游戏,URL.canParse 和 URL() 实现了 WHATWG 规范中定义的基本 URL 解析器算法。
由于这两种方法都实现了相同的解析器,并且 URL() 目前得到了很好的支持,因此您可以按照一般建议使用构造函数来验证 URL。将新的 URL() 放在一个辅助函数中,检查它是否抛出异常并调用它一天!
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 函数,你也可以像 core-js 一样填充 URL.canParse()。
唯一剩下的就是“什么是有效的URL?”这个问题,但我会把这个问题留到下次!因为这是一个艰难的过程。
以上就是JavaScript 中验证 URL 的新方法(2023 版)的详细内容,更多请关注全栈开发网其它相关文章!