**Tell us what’s happening:**

I’m stuck on this one.

My idea with the code below is that I want to establish the basic concept of factorials with ` n = 0`

and `return num =1`

and hope that descends into the code below it. However, that’s as far as I’ve been able to get. I have a low confidence in the previous theory I espoused.

So, the main thing I’m looking for is nudges toward what array modes I should probably be using. I’ve seen reduce() but I’m not sure how this would help. .push() seems right but I’m not sure how to contextually use it.

Also, any tips on thinking through algorithms. Or, websites that help to orient one’s thinking in this manner would be helpful as well.

Thank you.

**Your code so far**

```
function factorialize(num) {
if(n = 0) {
return num = 1;
} else {
return num *= n;
}
}
factorialize(5);
```

**Your browser information:**

User Agent is: `Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36`

.

**Link to the challenge:**

https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-algorithm-scripting/factorialize-a-number/