Create promise_chaining.js

This commit is contained in:
xfarrow 2023-10-05 16:37:07 +02:00
parent e2bcaf66c8
commit bf06300b45
1 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,56 @@
// https://javascript.info/promise-chaining
// .then() returns a new Promise when you do "return",
// internally calling resolve().
// new Promise(function(resolve, reject) {
// setTimeout(() => resolve(1), 1);
// }).then(function(result) {
// console.log(result);
// return result * 2;
// }).then(function(result) {
// console.log(result);
// return result * 2;
// }).then(function(result) {
// console.log(result);
// return result * 2;
// });
/*
It will print
1
2
4
*/
/*
It means that "then" is internally implemented roughly as follows:
function then(f){
return new Promise(function(resolve, reject) {
resolve(f());
})
}
*/
// Another example:
fetch('http://www.fsf.org')
// .then below runs when the remote server responds
.then(function(response) {
// response.text() returns a new promise that resolves with the full response text
// when it loads
return response.text();
})
.then(function(text) {
// ...and here's the content of the remote file
console.log(text);
});