检查一个字符串是否以http开头使用Javascript

21 浏览
0 Comments

检查一个字符串是否以http开头使用Javascript

我已经在各个地方搜索了答案,但找到的答案都不是用JavaScript编写的。

我需要一种在JavaScript中检查字符串是否以http、https或ftp开头的方法。如果不是以其中之一开头,我需要在字符串前面加上http://。我认为indexOf对我来说行不通,因为我需要的是http、https或ftp。此外,我不希望像google.com/?q=http://google.com这样的内容被视为有效,因为它不以http开头,而indexOf会将其视为true(如果我没有完全弄错的话)。

我找到的最接近的PHP正则表达式是这样的:

function addhttp($url) {
   if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
      $url = "http://" . $url;
   }
   return $url;
}

来源:如何在URL中添加http(如果不存在)

我只是不知道如何将其转换为JavaScript。非常感谢任何帮助。

0