# JavaScript: Compute the factors of a positive integer

## JavaScript Function: Exercise-13 with Solution

Write a JavaScript function to compute the factors of a positive integer.

Sample Solution: -

HTML Code:

``````<!DOCTYPE html>
<html>
<meta charset=utf-8 />
<title>Compute the factors of a positive integer</title>
<body>

</body>
</html>
```
```

JavaScript Code:

``````function factors(n)
{
var num_factors = [], i;

for (i = 1; i <= Math.floor(Math.sqrt(n)); i += 1)
if (n % i === 0)
{
num_factors.push(i);
if (n / i !== i)
num_factors.push(n / i);
}
num_factors.sort(function(x, y)
{
return x - y;});  // numeric sort
return num_factors;
}
console.log(factors(15));  // [1,3,5,15]
console.log(factors(16));  // [1,2,4,8,16]
console.log(factors(17));  // [1,17]
```
```

Sample Output:

```[1,3,5,15]
[1,2,4,8,16]
[1,17]
```

Flowchart:

Live Demo:

See the Pen JavaScript - Compute the factors of a positive integers-function-ex- 13 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

How to check whether a string contains a substring in JavaScript?

ECMAScript 6 introduced String.prototype.includes:

```const string = "foo";
const substring = "oo";

console.log(string.includes(substring));
```

includes doesn't have Internet Explorer support, though. In ECMAScript 5 or older environments, use String.prototype.indexOf, which returns -1 when a substring cannot be found:

```var string = "foo";
var substring = "oo";

console.log(string.indexOf(substring) !== -1);
```

Ref: https://bit.ly/3fFFgZv