# JavaScript: Formats a number to a human-readable string

## JavaScript String: Exercise-15 with Solution

Write a JavaScript function to humanized number (Formats a number to a human-readable string.) with the correct suffix such as 1st, 2nd, 3rd or 4th.

Test Data:
console.log(humanize_format());
console.log(humanize_format(1));
console.log(humanize_format(8));
console.log(humanize_format(301));
console.log(humanize_format(402));
"1st"
"8th"
"301st"
"402nd"

Sample Solution:-

HTML Code:

``````<!DOCTYPE html>
<html>
<meta charset="utf-8">
<title>Formats a number to a human-readable string </title>
<body>
</body>
</html>
```
```

JavaScript Code:

``````humanize_format = function humanize(num) {
if(typeof(num) == "undefined") return;
if(num % 100 >= 11 && num % 100 <= 13)
return num + "th";

switch(num % 10) {
case 1: return num + "st";
case 2: return num + "nd";
case 3: return num + "rd";
}
return num + "th";
}
console.log(humanize_format());
console.log(humanize_format(1));
console.log(humanize_format(8));
console.log(humanize_format(301));
console.log(humanize_format(402));
```
```

Sample Output:

```undefined
1st
8th
301st
402nd
```

Flowchart:

Live Demo:

See the Pen JavaScript Formats a number to a human-readable string - string-ex-15 by w3resource (@w3resource) on CodePen.

Improve this sample solution and post your code through Disqus

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿

## JavaScript: Tips of the Day

Tagged template literals

```function getPersonInfo(one, two, three) {
console.log(one);
console.log(two);
console.log(three);
}

const person = 'Lydia';
const age = 21;

getPersonInfo`\${person} is \${age} years old`;
```

If you use tagged template literals, the value of the first argument is always an array of the string values. The remaining arguments get the values of the passed expressions!

Ref: https://bit.ly/323Y0P6