Open In App

How To Get URL And URL Parts In JavaScript?

Last Updated : 25 Sep, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

In web development, working with URLs is a common task. Whether we need to extract parts of a URL or manipulate the URL for navigation, JavaScript provides multiple approaches to access and modify URL parts. we will explore different approaches to retrieve the full URL and its various components.

These are the following approaches to get URL And URL Parts In JavaScript:

Using window.Location Object

The window.location object contains information about the current URL of the document. It provides various properties to access different parts of the URL.

Syntax:

window.location.href; // Full URL
window.location.hostname; // Domain name
window.location.pathname; // Pathname
window.location.protocol; // Protocol (http/https)
window.location.search; // Query string
window.location.hash; // Fragment (anchor part)

Example: This example retrieves different parts of the URL using a window. Location. It’s particularly useful for accessing the current URL of the webpage.

JavaScript
// index.js

// Accessing different parts of the current URL
// Full URL
console.log(window.location.href);

// Domain name
console.log(window.location.hostname);

// Pathname
console.log(window.location.pathname);

// Protocol
console.log(window.location.protocol);

// Query string
console.log(window.location.search);

// Fragment identifier
console.log(window.location.hash); 

Output:

as
OUtput

Using URL Constructor

The URL constructor provides a more flexible way to work with URLs in JavaScript. We can create a new URL object and extract various components from it.

Syntax:

let url = new URL(urlString);
url.href; // Full URL
url.hostname; // Domain name
url.pathname; // Pathname
url.protocol; // Protocol
url.search; // Query string
url.hash; // Fragment identifier

Example: The URL constructor is a flexible way to parse a URL string and extract its components. It works for URLs outside the current window, unlike window.location, which only works for the current page's URL.

JavaScript
// index.js

// Create a new URL object from a string
const url = new URL("https://www.example.com:8080/page?name=John#section1");

// Full URL
console.log(url.href); 

// Domain name
console.log(url.hostname);

// Pathname
console.log(url.pathname);

// Protocol
console.log(url.protocol);

// Query string
console.log(url.search);

// Fragment identifier
console.log(url.hash); 

Output
https://www.example.com:8080/page?name=John#section1
www.example.com
/page
https:
?name=John
#section1

Using split() Method on URL String

If we don't need the complexity of objects like window.location or URL, a simple string manipulation using split() can be used to extract different parts of the URL manually.

Syntax:

urlString.split(delimiter); // Split the URL by the delimiter

Example: This method manually splits the URL string based on known delimiters (://, /, :) to extract components. It's a quick way to get URL parts without using any built-in objects, though it’s less robust compared to other approaches.

JavaScript
// index.js

// URL string
const urlString = "https://www.example.com:8080/page?name=John#section1";

// Splitting the URL by different delimiters
const [protocol, rest] = urlString.split("://");
const [domainAndPort, pathAndQuery] = rest.split("/");
const [domain, port] = domainAndPort.split(":");

// Protocol
console.log(protocol);

// Domain
console.log(domain);

// Port
console.log(port);

// Path and Query
console.log(pathAndQuery); 

Output
https
www.example.com
8080
page?name=John#section1

Next Article
Article Tags :

Similar Reads