Как проверить, содержит ли URL только домен, используя JavaScript? - PullRequest
0 голосов
/ 11 ноября 2018

Как я могу проверить, содержит ли URL только домен в javascript?

let s = 'some url string';

, который должен работать, как показано ниже.

https://google.com/ --> true
https://docs.google.com/ --> true

https://google.com/blabla  --> false
https://google.com/blabla/ ---> false
https://docs.google.com/blabla/ ---> false

Ответы [ 3 ]

0 голосов
/ 11 ноября 2018

Вы можете использовать глобальные URL:

const url = new URL('', 'https://google.com/blabla ');
console.log(url.hostname); // "google.com"
console.log(url.pathname); // "/blabla" 

Вы можете проверить url.pathname, и, если нет пути, он вернет /.

const url = new URL('', 'https://google.com ');
console.log(url.hostname); // "google.com"
console.log(url.pathname); // "/"
0 голосов
/ 11 ноября 2018

Вы можете использовать регулярные выражения для проверки содержимого URL. /^https?:\/\/[^\/?]+\/$/g соответствует любому URL, который начинается с http и заканчивается суффиксом домена и /

var url = 'https://google.com/';
/^https?:\/\/[^\/?]+\/$/g.test(url) // true

function testURL(url){
  return /^https?:\/\/[^\/?]+\/$/g.test(url);
}
console.log(testURL('https://google.com/'));
console.log(testURL('https://docs.google.com/'));
console.log(testURL('https://google.com/blabla'));  
0 голосов
/ 11 ноября 2018

Вы можете использовать Window.location, чтобы получить все эти детали

Пример: по этому вопросу:

window.location.hostname  ==>> // "stackoverflow.com"

window.location.pathname == >> ///questions/53249750/how-to-check-whether-url-only-contains-the-domain-in-js

window.location.href == >>
"/10702134/kak-proverit-soderzhit-li-url-tolko-domen-ispolzuya-javascript 
 contains-the-domain-in-js"

Вы можете проверить путь и сделать свое дело:

if (window.location.pathname === "" || window.location.pathname === "/") {
   return true
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...