JavaScript使用URL.canParse验证URL的方法详解

 更新时间:2023年12月13日 11:48:38   作者:程序员凌览  
JavaScript诞生以来,一直没有一种简单的方法验证URL,现在JavaScript新增了一个新方法——URL.canParse,文中通过代码示例和图文介绍的非常详细,需要的朋友可以参考下

JavaScript诞生以来,一直没有一种简单的方法验证URL,现在JavaScript新增了一个新方法——URL.canParse

URL.canParse('https://www.stefanjudis.com'); // true 
URL.canParse('www.stefanjudis.com'); // false

URL.canParse() 是一种快速验证字符串是否为有效的URL的方法。然而我们也不要高兴太早,URL.canParse()方法还存在浏览器兼容问题,在写这篇文章时支持该方法的浏览器版本如下图:

这是详情的浏览器支持信息链接:https://caniuse.com/?search=canParse%E3%80%82

不过core-js已支持URL.canParse()方法,使用core-js作为垫片可以解决浏览器兼容性问题。

URL.canParse()URL() 构造函数是相同的算法来评估有效的 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 一样 polyfill URL.canParse() 。

以上就是JavaScript使用URL.canParse验证URL方法详解的详细内容,更多关于JavaScript验证URL的资料请关注脚本之家其它相关文章!

相关文章

  • Three.js利用Detector.js插件如何实现兼容性检测详解

    Three.js利用Detector.js插件如何实现兼容性检测详解

    这篇文章主要给大家介绍了关于Three.js利用Detector.js插件如何实现兼容性检测的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-09-09
  • JS的replace方法详细介绍

    JS的replace方法详细介绍

    replace() 方法的参数 replacement 可以是函数而不是字符串。在这种情况下,每个匹配都调用该函数,它返回的字符串将作为替换文本使用
    2012-11-11
  • javascript 封装的一个实用的焦点图切换效果

    javascript 封装的一个实用的焦点图切换效果

    之前有一篇博客,实用的焦点图切换效果,结构行为相分离 解释的比较详细,脚本是分离式的,但在易用性和重用性方面并不理想,这里原作者进行了,优化。
    2010-07-07
  • javascript中for...of和for..in循环的区别

    javascript中for...of和for..in循环的区别

    JS中循环语句众多,你是否也有用的时候突然不知道用哪个的经历,本文主要介绍了javascript中for...of和for..in循环的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • JavaScript对象详解之对象属性的添加

    JavaScript对象详解之对象属性的添加

    这篇文章主要给大家介绍了关于JavaScript对象详解之js对象属性的添加的相关资料,在JavaScript中对象是通过键值对来存储数据的一种数据类型,可以通过直接给对象添加属性的方式来增加对象的属性,需要的朋友可以参考下
    2023-07-07
  • JS解决移动web开发手机输入框弹出的问题

    JS解决移动web开发手机输入框弹出的问题

    在移动web开发中和pc端不同的是,手机的输入是软键盘,这样就会有个问题,那就是当有输入的时候,键盘弹起来,整个页面难免会发生变化。怎么解决这个问题呢?下面脚本之家小编给大家分享JS解决移动web开发手机输入框弹出的问题
    2017-03-03
  • 查看图片(前进后退)功能实现js代码

    查看图片(前进后退)功能实现js代码

    前进后退实现的前提是:images文件夹下图片的命名是从1~5.jpg有规律的,感兴趣的朋友可以参考下哈,希望可以帮助到你
    2013-04-04
  • JS实现鼠标按下拖拽效果

    JS实现鼠标按下拖拽效果

    这篇文章主要为大家详细介绍了JS实现鼠标按下拖拽效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-07-07
  • 微信小程序开发之录音机 音频播放 动画实例 (真机可用)

    微信小程序开发之录音机 音频播放 动画实例 (真机可用)

    这篇文章主要介绍了微信小程序开发之录音机 音频播放 动画实例 (真机可用),这里整理了详细的代码,有需要的小伙伴可以参考下。
    2016-12-12
  • JS 替换和时间插件的结合使用方法

    JS 替换和时间插件的结合使用方法

    这篇文章主要介绍了JS 替换和时间插件的结合使用代码,需要的朋友可以参考下
    2013-07-07

最新评论