JavaScript Formatting Date Tips

by Janeth Kent Date: 30-04-2021 javascript coding functions webdev

Something that seems simple as the treatment of dates can become complex if we don't take into account how to treat them when presenting them to the user. That is why here we are going to see how we can format dates in JavaScript.

To do this we are going to work with the Intl object which allows us to adapt the format of the dates to the location in which we present the content.

The first thing to do is to create a date. To do this we use the Date object, to which we pass a specific date.

// Date setting  const date = new Date('February 15, 2020 20:52:30 GMT+00:00');

Now we are going to create our Int object, specifically the .DateTimeFormat() method which is used to format dates in JavaScript.

new Intl.DateTimeFormat(locale,options);

This method receives two parameters, the first one is the locale of the format we want to follow, which is a tag that follows the BCP 47 specification. This is a code with the acronym of the language, followed by a hyphen and the acronym of the country on which we want to do the localisation. For example es-ES for Spanish Spanish, en-US for US English or ar-EG for Egyptian Arabic.

The second parameter is the options for the date format. In them we can define, by means of a JSON structure, some values such as the format style, calendar to be used or numbering system,... Thus we can shape some of the following parameters:

  • dateStyle, for the style of the date and that can have the values 'full', 'long', 'medium' or 'short'.
  • timeStyle, for the style of the time, which can have the values 'full', 'long', 'medium' or 'short'.
  • calendar, to indicate the type of calendar and which can have the values 'buddhist', 'chinese', 'coptic', 'ethiopia', 'ethiopic', 'gregory', 'hebrew', 'indian', 'islamic', 'iso8601', 'japanese', 'persian', 'roc'.
  • dayPeriod, to express periods of the day, with the values 'narrow', 'short' or 'long'
  • ...

So the call to the .DateTimeFormat() method would be as follows:

new Intl.DateTimeFormat('en-US',{dateStyle:'short'});

Now what we have to do is to invoke the .format() method to which we will pass the date so that it can execute the formatting.

// En inglés americano se pone primero el mes y luego el día.  
console.log(new Intl.DateTimeFormat('en-US',{dateStyle:'short'}).format(fecha));  
console.log(new Intl.DateTimeFormat('en-US',{dateStyle:'full'}).format(fecha));    
// Es formato español se pone primero el día y luego el mes.  
console.log(new Intl.DateTimeFormat('es-ES',{dateStyle:'short'}).format(fecha));  
console.log(new Intl.DateTimeFormat('es-ES',{dateStyle:'full',calendar:'islamic'}).format(fecha));

In this code we can see the result for short dates:


Long dates:

Friday, April 30, 2021

Or dates in the Islamic calendar.

Ramadan 18, 1442

This way you can handle your programs that have to format dates in JavaScript.

by Janeth Kent Date: 30-04-2021 javascript coding functions webdev hits : 1070  
Janeth Kent

Janeth Kent

Licenciada en Bellas Artes y programadora por pasión. Cuando tengo un rato retoco fotos, edito vídeos y diseño cosas. El resto del tiempo escribo en MA-NO WEB DESIGN END DEVELOPMENT.


Related Posts

What are React Hooks and what problems they solve

Working with React, - and before the release of Hooks in version 16.8 -  there was always the possibility to create components in three different ways based on a number of…

Flattening arrays in JavaScript

When we are handling arrays that are arrays or have multiple dimensions it can be very useful to know how to flatten arrays in JavaScript. That is to say, to…

How to populate an array with random numbers in JavaScript

Some of you might think that what we explained in the article on how to populate an array with numbers, apart from the didactic part, would not have much applicability…

How to populate an array with numbers in JavaScript

Populate an array with numbers in JavaScript The first step is to initialise the array. So today we are going to see a simple way to do it and see how…

Top Javascript Libraries and Frameworks Part 2

What are JavaScript frameworks?   JavaScript frameworks are application frameworks that allow developers to manipulate code to meet their particular needs. Web application development is like building a house. You have the option…

How to Send Email from an HTML Contact Form

In today’s article we will write about how to make a working form that upon hitting that submit button will be functional and send the email (to you as a…

Top JavaScript libraries and frameworks part 1

JavaScript libraries and frameworks make it easy to develop websites and applications with a wide variety of features and functionality, all with dynamic, flexible and engaging features. According to a 2020…

Looping through a matrix with JavaScript

We were already talking about how to multiply arrays in JavaScript and we realised that we had not explained something as simple as traversing an array with Javascript. So we…

How to multiply matrices in JavaScript

It may seem strange to want to know how to multiply matrices in JavaScript. But we will see some examples where it is useful to know how to perform this…

How to make a multilingual website without redirect

Today, we're going to talk about how to implement a simple language selector on the basic static website, without the need of any backend or database calls or redirection to…

Starting with Bootstrap-Vue step by step

Today we will show you how to use BootstrapVue, describe the installation process and show basic functionality. The project’s based on the world's most popular CSS framework - Bootstrap, for building…

Creating simple CSS spinner-loader

In today's article we will show you how to animate a basic loader that spins when some predefined action is defined, such as loading an image. That can be used…

We use our own and third-party cookies to improve our services, compile statistical information and analyze your browsing habits. This allows us to personalize the content we offer and to show you advertisements related to your preferences. By clicking "Accept all" you agree to the storage of cookies on your device to improve website navigation, analyse traffic and assist our marketing activities. You can also select "System Cookies Only" to accept only the cookies required for the website to function, or you can select the cookies you wish to activate by clicking on "settings".

Accept All Only sistem cookies Configuration