what’s the difference between these two promises one is used in argument other outisde , which one is preferred
fetch(API_URL + "films")
.then(response => response.json())
.then(films => {
output.innerText = getFilmTitles(films);
})
.catch(error => output.innerText = ":(")
fetch(API_URL + "films")
.then(response =>
response.json()
.then(films => {
output.innerText = getFilmTitles(films);
}))
.catch(error => output.innerText = ":(")
Advertisement
Answer
This is probably opinion based. I think the first one is preferred because you won’t end up with nested promises and should be easier to read.
To make it more obvious:
fetch(API_URL + 'films')
.then(response => response.json())
.then(films => {
output.innerText = getFilmTitles(films);
})
.catch(error => output.innerText = ':(');
vs
fetch(API_URL + 'films')
.then(response => response.json()
.then(films => {
output.innerText = getFilmTitles(films);
})
.catch(error => output.innerText = ':(')
);
The number of indentation of the second way would grow while the number of indentations in the first approach is fixed.