I'd like to check my understanding of `Promise.prototype.then` is correct.

In the specs (<https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/then>) it says:

> 
> If a handler function:
> 
> 
> returns a value, the promise returned by then gets resolved with the
> returned value as its value.
> 
> 
> 

Is it not a bit strange for `.then` to return a promise object if I just returned something simple like `5` from the `.then`'s callback? How does this promise object resolve? It doesn't seem like it's fetching something from anywhere. Do promises like this always get fulfilled?

```js
function fetchDog(){
  fetch("https://dog.ceo/api/breeds/image/random") 
  .then(response => 5) 
  .then(data => console.log(data))
};

fetchDog();
```