# JavaScript Math random()

In this tutorial, we will learn about the JavaScript Math.random() function with the help of examples.

The `Math.random()` function returns a floating-point, pseudo-random number between 0 (inclusive) and 1 (exclusive).

### Example

``````let randomNumber = Math.random()

console.log(randomNumber)

// Output: 0.16668531572829082``````

## Math.random() Syntax

The syntax of the `Math.random()` function is:

``Math.random()``

`random`, being a static method, is called using the `Math` class name.

## Math.random() Parameters

The `Math.random()` function does not take in any parameters.

## Math.random() Return Value

• Returns a floating-point, pseudo-random number between 0 (inclusive) and 1 (exclusive).

## Example 1: Using Math.random()

``````// generating random number in range [0, 1)
var random_num = Math.random();
console.log(random_num);``````

Output

`0.5856407221615856`

Note: You might get a different output in the above program as `Math.random()` will generate a random number.

## Example 2: Generate random number between two numbers

``````// generating random number in range [x, y)
function getRandomNum(min, max) {
return Math.random() * (max - min) + min;
}

// random number in range 5(inclusive) and 10(exclusive)
var random_num = getRandomNum(5, 10);
console.log(random_num);

// random number in range 0(inclusive) and 100(exclusive)
var random_num = getRandomNum(0, 100);
console.log(random_num);``````

Output

```6.670210050278422
70.46845725092274```

Here, we can see that the random value produced by `Math.random()` is scaled by a factor of the difference of the numbers.

Then it is added to the smaller number to produce a random number between the given range.

## Example 3: Generate random integer between two numbers

``````// Generating random integer in range [x, y)
// The maximum is exclusive and the minimum is inclusive
function getRandomInt(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min)) + min;
}

// random int in range 5(inclusive) and 10(exclusive)
var random_num = getRandomInt(5, 10);
console.log(random_num);

// random int in range 0(inclusive) and 100(exclusive)
var random_num = getRandomInt(0, 100);
console.log(random_num);``````

Output

```6
46```

Firstly, we ceil the min value while floor the max value.

Here, we can see that the random value produced by `Math.random()` is scaled by a factor of the difference of the numbers.

Then it is floored using `Math.floor()` to make it an integer. Finally, it is added to the smaller number to produce a random number between the given range.

## Example 4: Generate integer between two numbers(inclusive)

``````// Generating random integer in range [x, y]
// Both values are inclusive
function getRandomInt(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min + 1)) + min;
}

// random int between 5 and 10
var random_num = getRandomInt(5, 10);
console.log(random_num);

// random int between 5 and 10
var random_num = getRandomInt(0, 100);
console.log(random_num);``````

Output

```8
100```

Firstly, we ceil the min value while floor the max value.

In this case, the only difference is that one is added to the difference so that the max value is also included.